[Spring] 프로젝트 환경설정

JinKyung·2023년 1월 9일
0

Spring

목록 보기
1/5

spring initializer

  • 최근엔 대부분 Gradle Project 사용
  • Dependencies: 라이브러리를 끌어와서 쓸건데, 어떤 라이브러리를 가져와서 쓸거냐

build.gradle

  • thymeleaf: 템플릿 엔진. html 만들어줌

라이브러리

🌟 Gradle은 의존관계가 있는 라이브러리를 함께 다운로드 한다.

⇒ 내가 하나의 라이브러리만 땡겨도 연쇄적으로 알아서 필요한 라이브러리 땡겨오는 구조.

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

테스트 라이브러리

  • spring-boot-starter-test
    • junit: 테스트 프레임워크
    • mockito: 목 라이브러리
    • assertj: 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
    • spring-test: 스프링 통합 테스트 지원

템플릿 엔진 동작

@Controller
public class HelloController {

    @GetMapping("hello") // localhost:8080/hello
    public String hello(Model model) {
        model.addAttribute("data", "hello!!"); // key: data, data: hello!!
        return "hello"; // hello.html로 보내라
    }
}
  • 컨트롤러에서 리턴값으로 문자를 반환하면 뷰 리졸버(’viewResolover’)가 화면을 찾아서 리턴 ⇒ 컨트롤러에서 hello를 리턴함. ⇒ resources/templates/hello.html을 찾아서 리턴
    • 스프링부트 템플릿 엔진 기본 viewName 매핑
      • resources:templates/ + { viewName }+ .html

0개의 댓글