처음부터 끝까지 직접 코딩
프로젝트 생성
라이브러리 살펴보기
View 환경설정
H2 데이터베이스 설치
JPA와 DB 설정, 동작확인
요즘은 jsp을 잘 안씀 성능 면에서나..
./gradlew dependencies
라이브러리 의존관계를 알 수 있다.
커넥션 풀 HikariCP 요즘 많이 씀
slf4j
단순한 로거를 찍는 인터페이스의 모임
요즘 스프링은 타임리프를 밀어준다.
Natural templates
웹 브라우저에서 바로 열림.
극단적인 단점?
ex) 3.0 되면서 많이 개선됨.
메뉴얼 좀 봐야됨..
따라해보면 도움이 많이 됨.
여기서 타임리프 장점 웹페이지로 바로 열림.
서버 사이드 렌더링
렌더링 해야 될 것은 templates 밑에.
재시작 없이 화면 페이지 만뜰고싶을때 devtools
https://h2database.com/h2-2019-10-14.zip
다운로드
JPA와 DB 설정, 동작확인
MVCC=TRUE 여러개의 한번에 접근 했을때 빠르게 처리됨
테스트 중 에러가 났다.
mem 붙여서 해주자 인메모리에서 작동하라는 건데
h2 파일도 재시작 해줘야됨 .
노란색 불이 안뜨면 오류가나니.. 주의할것.. (ㅠㅠ 해결안돼서 복붙함)
@Transactional 이있으면 테스트 끝나구 롤백을 해버림
@Rollback(false) 애노테이션은 롤백을 막아준다.
마지막 테스트는 트랜잭션안에 영속성 때문에 두개의 엔티티는 같다.
junit 4 하고 5하고 혼합해서 쓰는환경이라
인터넷에 찾아보니 runwith -> @ExtendWith(SpringExtension.class)
이걸로 바꿔주자.
부족하면
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.6'
버전이 안붙은 라이브러리는 스프링이 알아서 다 셋팅해줌
쿼리 파라미터를 로그로 남기는 외부 라이브러리는 시스템 자원을 사용하므로
개발 단계에서는 편한하게 사용해도 되지만 운영시스템에선 성능 테스트를 하고
적용하자