티스토리 뷰

database

Q&A : JPA 관련 질문 모음

advenoh 2019. 3. 22. 22:18

Gatsby로 블로그 마이그레이션을 하여 이 링크를 클릭하면 해당 포스팅으로 갑니다. 

감사합니다. 

http://blog.advenoh.pe.kr


JPA

개인적으로 모르는 부분 적어두고 알게 되는 부분에 대해서 간단하게 정리해둔 자료입니다. 
미 답변중에 알고 계신 부분 있으면 코멘트 달아주세요. 감사합니다. 


[미 답변 질문]

- @MappedSuperclass
- JPA에서 db 저장 시점은 언제인가? 
- @NotFound(action = NotFoundAction.IGNORE)



@Param






[답변완료]

1. @EntityListeners 이란?



엔티티를 DB에 적용하기 전후로 Custom 콜백을 요청할 수 있는 어노테이션입니다. 

참고

2. @PostLoad

@PostLoad 어노테이션은 엔티티를 로딩한 후에 호출 할 메서드를 설정하는 어노테이션입니다. 

참고

3. 자동으로 schema 생성하려면 설정을 어떻게 바꿔야 하나?

persistence.xml 파일에서 hibernate 설정에 hiberate.hbm2ddl.auto 속성을 아래와 같이 추가하면 됩니다. 
  • value 
    • create : 매번 실행할 때마다 table을 삭제하고 다시 생성한다
    • update : 테이블 없는 경우에는 테이블을 생성한다 



4. JPA에서 객체를 수정하면 기본으로 모든 필드 값을 포함해서 UPDATE SQL 문구가 생성되는데, 수정한 속성만 업데이트하려면 어떻게 설정을 해야 하나?

저장할 필드가 너무 많은 경우에는 수정된 데이터만 포함해서 UPDATE SQL 문구를 생성하려면 @DynamicUpdate 어노테이션을 클래스에 선언하면 됩니다. 

추가로 @DynamicInsert는 필드 값이 존재하는 필드(null이 아닌)만 포함해서 INSERT SQL 구문을 생성 할 때 사용됩니다.


«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday