이 Hibernate: Where do insertable = false, updatable = false belong in composite primary key constellations involving foreign keys?에 대한 후속 질문입니다 이유 :JPA : 관계 매핑 대 간단한 중복 - 어디에 삽입 = false를 갱신 = false를 넣어
는 다음 엔티티 매핑을 고려
public class Zip {
@ManyToOne
@JoinColumn(name = "country_code", referencedColumnName = "iso_code")
private Country country = null
@Column(name = "country_code")
private String countryCode;
...
}
처럼 이 JPA 구현은 "country_code에 대한 중복 매핑과 같은 것을 말하며, 그 중 하나만 쓰기 가능으로 지정할 수 있습니다".
Q :
왜 일반적 퍼팅 위에/여기 바람직 읽기 전용 (private Country country
을)를 관계를 결정하는 읽기 전용 간단한 ID 필드 (private String countryCode
)에?
실제로 다른 편보다 나은 점은 무엇입니까 (찬성/반대)?
내가 생각할 수있는 유일한 일
는 DB 다소 필수, 그러나,이 할 수있는 못하도록하지 않을 단체와 협력 할 것 어떤 FKS를 사용 하지, 때 쓰기 가능한 관계로 작업하는 것이 더 나은 것입니다 ID를 알 수없는 DB에 새 엔티티를 삽입하면 쓰기 가능한 관계가 약간 더 안전 해집니다. 물론 ID로 작업 할 수 있다면 DB에서 전체 엔티티를 로딩하는 것이 큰 성능 측면이 될 수 있습니다.더 많은 논의가 환영합니다.
추신 : 더 많은 잠재 고객을 확보하기 위해 JPA 구현을 태그로 추가했습니다.