대리점과 판매자 사이에 프록시를 사용하여 게으른 관계가 있어야하는 일대일 관계가 있습니다. 외래 키가 정의 된 측면 (판매자, 참조 딜러),이 잘 작동합니다. 그러나 다른 쪽에서는 효과가 없습니다. 판매자는 항상 열심히로드됩니다. "Some explanations on lazy loading"에 설명 된대로 constrained="true"
으로 설정했지만 도움이되지 않았습니다. 이 두 클래스는 하나 개의 테이블에있는 문제프록시를 사용하지 않는 게으른 일대일
<class name="Role" table="PER_PERSROLE" abstract="true">
<id column="OID" type="long">
<generator class="native" />
</id>
<discriminator column="SUBTYPE" type="string" />
</class>
<subclass name="Dealer" extends="Role" discriminator-value="DEAL">
<property name="gpNr" column="GP_NR" type="string" />
<one-to-one name="seller" property-ref="dealer" lazy="proxy" constrained="true"
outer-join="false" />
</subclass>
<subclass name="Seller" extends="Role" discriminator-value="SELL">
<many-to-one name="dealer" column="SELLER_DEALEROID" lazy="proxy"
outer-join="false" />
</subclass>
인가 :
사용 된 매핑되는 다음? 엄격하게 말하면 관계는 데이터베이스에 제약이 없지만 (이 모델을 사용할 수는 없음) 도메인 모델은 항상 두 엔티티를 모두 필요로하므로 애플리케이션이이를 보장합니다.
당신은 정말 Hibernate의 1-1 매핑을 사용하지 않으 : http://www.sworddance.com/blog/2006/10/03/hibernate-nastiness-using-the-one-to-one-mapping/ – Pat