오늘은 JPA에 대해 공부한다
JPA를 사용하면 SQL과 데이터 중심의 설계에서 객체 중심의 설계로 할 수 있다
build.gradle에서 jpa 라이브러리 추가하기
application.properties에서 jpa 추가하기
none이 아닌 create로 설정하면 자동으로 테이블까지 생성한다
JPA는 인터페이스고 Hiberate가 구현체이다
domain 패키지의 Member클래스 변경하기
만약 name이 아닌 username이라면 @Column(name="username")으로 하면 테이블 처리를 할 수 있다
repository 패키지에 JpaMemberRepository 클래스 생성
jpa는 EntityManager로 모든 것이 동작한다
JpaMemberRepository클래스 save 오버라이딩 하기
JpaMemberRepository클래스 findById 오버라이딩 하기
JpaMemberRepository클래스 findAll 오버라이딩 하기
전부 맵핑이 되어있기 때문에 select m from Member m으로 찾을 수 있다
JpaMemberRepository클래스 findByName 오버라이딩 하기
service패키지의 MemberService에 @Transactional 추가하기
@Transactional이 있어야 jpa 사용이 가능하다
SpringConfig패키지 변경하기