섹션 1. 프로젝트 환경설정

김슬기·2022년 9월 23일
0

간단한 웹 애플리케이션 개발

  • 스프링 프로젝트 생성
  • 스프링 부트로 웹 서버 실행
  • 회원 도메인 개발
  • 웹 MVC개발
  • DB연동 - JDBC, JPA, 스프링 데이터 JPA
  • 테스트 케이스 작성

프로젝트 생성

  • maven project - 요즘은 거의 안씀

  • Gradle Project - Java - 2.3.1로 하기

  • metadata

    • group 보통 기업 도메인 명
    • 아티팩트 — > 결과물 이름(프로젝트 명)
    • Dependencies —>어떤 라이브러리를 사용할 것인가
      • spring web
      • Thymeleaf사용하기
  • gitignore 에 빌드하고 나온 결과물들들어감

  • 스프링은 포트가 8080임(localhost:8080)

  • 라이브러리 살펴보기

    • build.gradle안에는 라이브러리가 몇개없지만실제로 아래에 라이브러리 들어가보면 매우 많다.
    • 사실 몇개 없는 라이브러리에서도 다른 많은 라이브러리도 필요하다
    • 그게 다 의존관계로 얽혀있다.
      • gradle은 의존관계가 있는 라이브러리를 다 다운한다.
    • 우측 바에 gradle을 누를시 라이브러리 의존관계 확인 가능
    • 실업무에서는 System.out.print()안씀 >>심각한 버그 관리 불가 >>>>> logging을쓴다.
    • 스프링 부트 라이브러리
      • spring-boot-starter-web
        • spring-boot-starter-tomcat : 톰캣 (웹서버)
          • spring-webmvc : 스프링 웹 MVC
      • spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진 (view)
      • spring-boot-starter(공통) : 스프링 부트 + 스프링 코어 + 로깅
        • spring-boot
          • spring-core
        • spring-boot-starter-logging
          • logback, slf4j이 두가지 조합ㅂ으로 운영
    • **test라이브러리**
      • junit : 테스트 프레임워크(핵심)
      • mockito: 목 라이브러리
      • assertj:테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
      • spring-test: 스프링 통합 테스트 지원

View환경설정

  • 스프링 부트가 제공하는 Welcome Page 기능

    • 스프링부트는 index.html을 스태틱에서 먼저 찾고 만약 못찾으면 index템플릿에서 찾고 이런식으로 동작
  • 타임 리프라는 템플릿 엔진 사용할것임 (동적 페이지)

  • main 안에 java 폴더에

    • controller 패키지 생성
      package hello.hellospring.controller;
      
      import org.springframework.stereotype.Controller;
      import org .springframework.ui.Model;
      import org.springframework.web.bind.annotation.GetMapping;
      
      @Controller
      public class hellocontroller {
      
          @GetMapping("hello") // url에서 /hello가 들어오면 아래 코드 실행
          public  String hello(Model model){ //MVC모델의 model
              model.addAttribute("data", "hello");
              return "hello";
          }
      }
    • Domain 패키지 생성
    • Repository 패키지 생성
    • Service 패키지 생성
    • SpringConfig 패키지 생성 업로드중..
  • resources

    • static-정적인 것들
    • template- 동적인 것들 (thymeleaf…)

빌드하고 실행하기

  • 터미널로 스프링부트 프로젝트 폴더 들어가기
  • ./gradelew build 하기
  • build폴더 진입 후 libs 디렉토리 진입한다음 java -jar 자바파일명 입력
  • 실행하면 스프링 서버 오픈
  • 안되면 빌드디렉토리 삭제 후 다시빌드해보기
profile
낭만그리고김슬기

0개의 댓글