0
중첩 :Hibernate는 내가 아래와 같은 모델 (의사) 프로젝트가 지연로드 및 LazyInitializationException이
: 나는 이런 식으로 뭔가를 얻으려고하면 이제class Transaction{
@OneToMany(mappedBy="transaction", fetch = FetchType.LAZY)
private Set<TransactionVersion> transactionVersions;
}
class TransactionVersion{
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name="ID_TRANSACTION_VERSION")
private Transaction transaction;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name="ID_CLIENT_VERSION")
private ClientVersion clientVersion;
}
class ClientVersion{
@OneToMany(mappedBy="clientVersion",fetch=FetchType.Lazy)
private Set<TransactionVersion> transactionVersions;
@OneToMany(mappedBy="client", fetch=FetchType.LAZY)
private Set<Client> clients;
}
을 ((0)되는 단지 예를 얻을) 내가 betwee 관계에 FetchType을 변경하는 경우에는 세션이나 세션이
폐쇄되지 않았다 ClientVersion.clients :transaction.getTransactionVersions().get(0)
.getClientVersion().getClients()
나는 LazyInitializationException이가 게으르게 역할의 컬렉션을 초기화하지 못했습니다 수 n ClientVersion과 Client는 EAGER로 작동하지만 느슨하게로드하는 것을 선호합니다.
세션을 최대 절전 모드로 전환 할 수 있다면 수동으로 콜렉션을 초기화 할 수 있지만, 하이버 네이트가 스스로 할 수 있도록 맵핑 할 수있는 방법이 있습니까? 관련된 객체를 얻고 싶을 때 내 사용자 정의 메소드를 사용하고 싶지 않습니다. 수요에 FetchType.LAZY
당신 데이터를로드