2013-10-18 35 views
0

我有一个驱动程序类:这是用来日常存储驱动器驱动的细节和在DriverEntry类有DriverEntryKey其中包含作为复合键

public class Driver { 

    private String driverId; 
    private String driverName; 

    //getter and setter 

} 

和一个在DriverEntry类驱动程序对象和日期对象。 那么我怎样才能在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> 

所以我能填补其内保持驾驶员---主键到外键 - 在 - >的DataEntry表???

回答

0

这是你想什么来实现

<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> 

你必须根据你的要求来调整答案有点

0
<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>