사용자 도구

사이트 도구


java:jpa:association

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
java:jpa:association [2018/09/01 21:37]
kwon37xi
java:jpa:association [2018/09/10 12:32]
kwon37xi [@JoinFormula]
줄 20: 줄 20:
 > 작가대 책의 관계가 Many-To-Many(공저자일 경우)가 발생하는 데 이 때 작가1을 삭제하면 공저자가 있는 책까지 모두 삭제하고 상호 ''Cascade.REMOVE''가 걸려있을 경우에는 관계의 연쇄로 인해 작가1과 공저한 책과 공저자 자신, 공저자의 다른 책들까지 연쇄를 삭제될 수 있다. > 작가대 책의 관계가 Many-To-Many(공저자일 경우)가 발생하는 데 이 때 작가1을 삭제하면 공저자가 있는 책까지 모두 삭제하고 상호 ''Cascade.REMOVE''가 걸려있을 경우에는 관계의 연쇄로 인해 작가1과 공저한 책과 공저자 자신, 공저자의 다른 책들까지 연쇄를 삭제될 수 있다.
  
 +==== @JoinFormula ====
 +  * 관계가 맺어져 있지 않을 경우 ''null''값을 저장해야 하지만 Legacy DB의 경우 ''0'' 이나 기타 다른 값을 저장하는 경우가 있다. 
 +  * [[https://docs.jboss.org/hibernate/orm/5.2/javadocs/org/hibernate/annotations/JoinFormula.html|@JoinFormula]]
 +  * [[https://docs.jboss.org/hibernate/orm/5.2/javadocs/org/hibernate/annotations/JoinColumnOrFormula.html|@JoinColumnOrFormula]]
 +  * [[https://docs.jboss.org/hibernate/orm/5.2/javadocs/org/hibernate/annotations/JoinColumnsOrFormulas.html|@JoinColumnsOrFormulas]]
 +  * [[https://docs.jboss.org/hibernate/orm/5.2/javadocs/org/hibernate/annotations/NotFound|@NotFound]]도 사용가능하지만 이 경우 잘못된 값이 들어온 경우와 ''null''을 나타내는 값이 들어온 경우를 구분할 수 없다.<code java>
 +@NotFound(action = NotFoundAction.IGNORE)
 +</code>
 +
 +=== @JoinFormula 참고 ===
 +  * [[https://stackoverflow.com/a/30073698/1051402|Hibernate handle long 0 value instead of NULL in ManyToOne relations]]
 +  * [[https://vladmihalcea.com/tag/joinformula/|@JoinFormula Archives - Vlad Mihalcea]]
 +  * [[https://vladmihalcea.com/how-to-customize-an-entity-association-join-on-clause-with-hibernate-joinformula/|How to customize an entity association JOIN ON clause with Hibernate @JoinFormula - Vlad Mihalcea]]
 +  * [[https://vladmihalcea.com/how-to-map-the-latest-child-of-a-parent-entity-using-hibernate-joinformula/#more-6983|How to map the latest child of a parent entity using Hibernate @JoinFormula - Vlad Mihalcea]]
  
java/jpa/association.txt · 마지막으로 수정됨: 2020/11/12 14:53 저자 kwon37xi