프로젝트 환경설정
Last updated
Was this helpful?
Last updated
Was this helpful?
에서 쉽게 프로젝트를 생성할 수 있다.
Gradle
Java
Spring Boot 2.1.7
groupId: jpabook
artifactId: jpashop
web, thymeleaf, jpa, h2, lombok, validation
spring-boot-starter-web
spring-boot-starter-tomcat
톰캣 (웹서버)
spring-webmvc
스프링 웹 MVC
spring-boot-starter-thymeleaf
타임리프 템플릿 엔진(View)
spring-boot-starter-data-jpa
spring-boot-starter-aop
spring-boot-starter-jdbc
HikariCP 커넥션 풀 (부트 2.0 기본)
hibernate + JPA
하이버네이트 + JPA
spring-data-jpa
스프링 데이터 JPA
spring-boot-starter(공통)
스프링 부트 + 스프링 코어 + 로깅
spring-boot
spring-core
spring-boot-starter-logging
logback, slf4j
spring-boot-starter-test
junit
테스트 프레임워크
mockito
목 라이브러리
assertj
테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
spring-test
스프링 통합 테스트 지원
핵심 라이브러리
스프링 MVC
스프링 ORM
JPA, 하이버네이트
스프링 데이터 JPA
기타 라이브러리
H2 데이터베이스 클라이언트
커넥션 풀
부트 기본은 HikariCP
WEB(thymeleaf)
로깅 SLF4J & LogBack
테스트
스프링 데이터 JPA는 스프링과 JPA를 먼저 이해하고 사용해야 하는 응용기술이다.
resources:template/
+ {ViewName}
+ .html
경로를 통해 스프링 부트에 thymeleaf viewName이 매핑된다. 기본 정적 화면은 /static/index.html
에 정의한다.
spring-boot-devtools
라이브러리를 추가한 뒤 html 파일을 컴파일만 하면 서버 재시작 없이 변경 사항이 반영된다. build-recompile
메뉴에서 컴파일 할 수 있다.
개발이나 테스트 용도로 사용할 수 있는 가볍고 편리한 데이터베이스다. 웹 화면을 제공한다.
운영 환경의 모든 로그는 가급적 로거를 통해 남겨야 한다. show_sql
은 System.out
에서 찍기 때문에 가급적 안 쓰는 게 좋다.
application.yml
같은 yml
파일은 띄어쓰기 2칸으로 계층을 만든다. 따라서 반드시 맞춰줘야 한다.
기본 SQL 로그는 파라미터가 안 나와서 답답할 때가 많다.
아래에 각 파라미터의 값을 출력해준다.
외부 라이브러리를 사용하는 방법도 있다.
파라미터 값이 출력되는 것을 볼 수 있다.
참고로 운영 시스템에 외부 라이브러리를 쓸 때는 꼭 성능 테스트를 해봐야 한다.