Hibernate 如果复合类在字段中包含类类型引用,则为复合键
我有一个驾驶员等级:Hibernate 如果复合类在字段中包含类类型引用,则为复合键,hibernate,hbmxml,Hibernate,Hbmxml,我有一个驾驶员等级: public class Driver { private String driverId; private String driverName; //getter and setter } 一个DriverEntry类用于存储驾驶员日常驾驶详细信息,DriverEntry类具有DriverEntryKey,其中包含作为驾驶员对象和日期对象的DriverEntryKey。 那么,如何在driver.hbm.xml文件中映射这些文件呢 pu
public class Driver {
private String driverId;
private String driverName;
//getter and setter
}
一个DriverEntry类用于存储驾驶员日常驾驶详细信息,DriverEntry类具有DriverEntryKey,其中包含作为驾驶员对象和日期对象的DriverEntryKey。
那么,如何在driver.hbm.xml文件中映射这些文件呢
public class DriverEntry {
private DriverEntryKey key;
private String startTime;
private String endTime;
//getter and setter
}
public class DriverEntryKey implements Serializable{
private Driver driver;
private Date date;
}
<class name="Driver" table="driver" >
<id name="driverId" column="driver_id">
<generator class="assigned"/>
</id>
<property name="driverName" column="prod_name" length="20"/>
</class>
<class name="DriverEntry" table="DriverEntry" >
<composite-id name="key" class="DriverEntryKey">
<key-property name="driver" type=""></key-property>
<key-property name="date" type=""></key-property>
</composite-id>
</class>
公共级出租汽车{
私钥;
私有字符串开始时间;
私有字符串结束时间;
//接二连三
}
公共类DriverEntryKey实现可序列化{
私人司机;
私人日期;
}
那么,在-->数据条目表中维护驱动程序(主键到外键)的内部我可以填充什么呢?这就是您想要实现的吗
<class name="DriverEntry">
<composite-id name="id" class="DriverEntryKey">
<key-property name="driverId"/>
<key-property name="date" type="date"/>
</composite-id>
<property name="name"/>
<many-to-one name="driver" class="Driver">
<column name="driverId"/>
// all other columns
</many-to-one>
....
</class>
//所有其他列
....
您必须根据自己的要求稍微调整答案
<class name="DriverEntry" >
<composite-id name="key" class="DriverEntryKey">
<key-many-to-one name="driver" class="Driver" column="driver_id"/>
<key-property name="drivingDate" type="java.util.Date"></key-property>
</composite-id>
<property name="startTime" column="start_time" />
<property name="endTime" column="end_time" />
</class>