Model이 알아서 resources/templates/파일이름 찾아감.
순수 html 리턴하고 싶으면 thymeleaf 지우기.
정적파일은 resources/static 에 넣는다.
바꾼 파일 recompile 만 해주자.
-------------------------------------------------------h2 데이터 베이스 설치
------------------------------------------------------ JPA와 DB 설정, 동작확인
저런 설정 법은 어디서 배우나요?
공식메뉴얼 보고 파야됨 spring boot documentation
ddl-auto: create ( create는 자동으로 테이블 만들어주는 옵션 )
hibernate가 남기는 모든 로그( sql ) 가 다 보인다. ( 실제
엔티티매니저를 통한 모든 데이터변경은 트랜젝션 안에서 이루어져야한다.
Member Entity 정보를 보고 테이블을 만들어둠 . ( 아까 application.yml 에서 CREATE로 해뒀기 때문에 )
근데 왜 데이터가 없지? -> @Transactional 이 @Test케이스에 있으면 테스트 끝나자마자 롤백을 해버림. 독립적인 테스트를 위한 스프링설정
@Rollback(false) 넣어주면 롤백안하고 커밋해줌 ( 너무 쉽다. )
같은 Transactional 안에서 저장하고 조회하면 영속성 컨텍스트가 똑같다. ( 같은 영속성 컨텍스트 안에서는 id 값이 값으면 같은 엔티티로 식별된다. ) 지금은 이해된다. ( 같은 트랜젝션 = 같은 영속성 컨텍스트 )
영속성 컨텍스트에서 관리 되는 똑같은 엔티티가 있기 때문에 걍 거기서 꺼내옴.
select 쿼리조차 날라가지 않음. 영속성컨텍스트에 id같은 엔티티객체가 있으니까 ( 어 ? 나 조회하는게 영속성컨텍스트에 있네? 하면서 1차캐시에서 꺼내옴 )
( JPA 엔티티 동일성 보장 )
#######쿼리 파라미터 로그 남기기
쿼리 파라미터가 안나옴 (?, ? ) 로 찍힌다.
?,? 라 떠도 밑에 뭐가 들어갔는지 파라미터가 나온다.
-> 시원치 않다. -> 외부 라이브러리 쓰자.
p6spy 라이브러리 쓰자
첫줄은 p6spy 썻다.
두번째 : 원본 출력
세번째 : 파라미터 바인딩 된 것 출력
---번외
테스트 꿀팁
tdd하고 탭 치면 저 양식 나옴.
'Java, Spring > 스프링부트와 JPA 활용 1' 카테고리의 다른 글
4-1. 회원 리포지토리 개발 ~ 4-2. 회원 서비스 개발 (0) | 2022.08.12 |
---|---|
2-5. 엔티티 설계시 주의점 (0) | 2022.08.11 |
2-4. 엔티티 클래스 개발2(다대다) (0) | 2022.08.11 |
2-3. 엔티티 클래스 개발1 (0) | 2022.08.11 |
2-1. 요구사항 분석 (0) | 2022.08.11 |