我有一個表項目與領域休眠:如何讓一個反向連接的實體(一個對一個)
ID
PROJECT_BASELINE_ATTRIBUTES_ID (FK for table PROJECT_BASELINE_ATTR)
此表具有以下映射
<hibernate-mapping package="com.initech.db.model">
<class name="com.initech.db.model.Project" table="PROJECT">
<id name="id" column="id" type="java.lang.Long">
<meta attribute="use-in-tostring">true</meta>
<generator class="sequence">
<param name="sequence">PROJECT_ID_SEQ</param>
</generator>
</id>
<many-to-one name="projectBaselineAttributes" column="PROJECT_BASELINE_ATTRIBUTES_ID" class="com.initech.db.model.ProjectBaselineAttributes" cascade="all" not-null="true">
<meta attribute="use-in-tostring">true</meta>
</many-to-one>^
</class>
</hibernate-mapping>
各Project.java類有字段
private Long id;
private ProjectBaselineAttributes projectBaselineAttributes;
此外,我有在能夠PROJECT_BASELINE_ATTR,含有該字段
ID
Hibernate映射:
各個ProjectBaselineAttributes.java類具有字段
private Long id;
private Set projects = new HashSet();
當前的映射是不理想的,因爲兩個表之間的關係實際上是一對一的關係,但在ProjectBaselineAttributes中,我有一組Pro即使對於一個ProjectBaseLineattributes總是有一個Projet。我應該映射看起來像ProjectBaselineAttributes這樣我就可以得到相關的項目「奇」,即,使類ProjectBaselineAttributes.java是這樣的:
private Long id;
private Project project;