Java EAR에 두 개의 엔티티가 있습니다 : 사용자 및 비밀번호. 물론 데이터베이스에는 사용자 및 암호와 관련된 테이블이 있습니다. passwords 테이블은 사용자의 ID를 외래 키로 포함합니다. 그래서 내 질문에 순수하게 주석을 사용하여 사용자 테이블에서 사용자가 만들어 질 때 암호 테이블에서 암호 항목을 끌어 오려면 어떻게해야합니까? 나는 잃어 버렸다.다른 엔티티에서 엔티티 참조하기
비즈니스 로직을 사용하여 사용자의 관련 비밀번호 엔티티에 액세스하고 싶지 않으므로 컨테이너를 사용해야합니다.
SCCE :
@Entity
@Table(name = "USERS")
public class User{
@Id
@Basic(optional = false)
@NotNull
@Column(name = "IDENTIFIER", nullable = false)
private Long identifier;
@JoinColumn(name = "UserIdentifier")
@OneToOne
private Password password;
// getters, setters, and other User related information such as username
}
@Entity
@Table(name = "PASSWORDS")
public class Password{
@Id
@Basic(optional = false)
@NotNull
@Column(name = "IDENTIFIER", nullable = false)
private Long identifier;
@JoinColumn(name = "USERIDENTIFIER", referencedColumnName = "IDENTIFIER", nullable = false)
@OneToOne(optional = false, fetch = FetchType.EAGER)
private User useridentifier;
//getters, setters, and other password related fields such as the password it's self
}
그리고 1-1 양방향 관계에 대해 "mappedBy"가 누락되었습니다. –
mappedBy 주석이 두 엔티티 또는 기본 엔티티 (이 경우 User) 모두로 이동합니까? 아니면 완전히 기지에서 벗어나나요? Lol –
@ neil-stockton 그래, 나는 그것을 놓쳤다. 지금 편집 중입니다. –