- 스프링 강의 듣기
- 개인과제 Spring으로 CRUD 만들기
- 비영속 (Transient)
- 영속 (Manager)
- 준영속 (Detached)
- 삭제 (Removed)
- entity transaction없이 쉽게 트랜잭션 환경을 만들어 줌
- readOnly= true 옵션을 통해 수정 안되고 읽기만 가능하게 가능, 최적화 하는데 도움이 됨
- 클래스 안의 메서드에 다른 옵션을 설정하고 싶은 경우 메서드에 @Transaction 어노테이션을 한번 더붙여 변경
- EntityManager em;
- 자동으로 생성해주는 EntityManager를 주입받아 오고 싶을 때 사용
메서드에 속한 하위 트랜잭션이 끝나도 상위 메서스까지 모든 트랜잭션이 끝나야 커밋
- JPA를 쉽게 사용할 수 있게 만들어 놓은 하나의 모듈
- JPA를 추상화시킨 repository를 제공
- 인터페이스에 JpaRepository를 상속 받으면 @Repository 어노테이션이 필요 없음, simpleJpaRepository에 들어가면 확인 가능
거짓 값이면 예외를 반환
- 작성시간, 수정시간 등을 편하게 구현해주는 기능
- @EntityListeners(AuditingEntityListener.class) 를 달면 자동 시간 넣기 기능 수행가능
- @CreatedDate 작성시간
- @Column(updatable = false)
업데이트가 추가로 되지 않음- @LastModifiedDate 변경시간
- @EnableJpaAuditing 메인메소드에 달아야 Auditing 사용가능
- 시간을 찍을 객체에 상속시켜줘야함
Spring Data JPA에서 메서드 이름으로 SQL을 생성할 수 있는 기능
- 스프링이 꽤 어렵게 느껴진다.
- 예외처리랑 http 상태코드를 공부하자!
- Autowired도 다시 공부하자!
- REST의 제약조건 6가지 공부하자!