У меня есть два класса, связанные с Hibernate, и я не могу определить конфигурацию для сопоставления записи Drug с моим PrescribedDrug class.
public class PrescribedDrug implements Serializable {
protected int prescribedDrugId;
private int drugId;
protected String sig;
protected int quantity;
protected int refillNumber;
protected Drug drugInfo;
...
}
public class Drug implements Serializable {
protected int drugId;
protected String name;
protected double strength;
protected String strengthUnits;
...
}
Моя модель данных выглядит следующим образом:
prescribed_drug drug
---------- --------------
prescribed_drug_id* drug_id*
drug_id* name
sig ....
...
Вот моя конфигурация гибернации:
<hibernate-mapping>
<class name="org.example.smartgwt.shared.model.PrescribedDrug" table="prescribed_drug" lazy="false">
<id name="prescribedDrugId" column="prescribed_drug_id">
<generator class="assigned"/>
</id>
<property name="drugId">
<column name="drug_id"/>
</property>
<property name="sig">
<column name="sig"/>
</property>
<property name="quantity">
<column name="quantity"/>
</property>
<property name="refillNumber">
<column name="refill_number"/>
</property>
<one-to-one name="drugInfo" class="org.example.smartgwt.shared.model.Drug" lazy="false" />
</class>
</hibernate-mapping>
<hibernate-mapping>
<class name="org.example.smartgwt.shared.model.PrescribedDrug" table="prescribed_drug" lazy="false">
<id name="drugId" column="drug_id">
<generator class="assigned"/>
</id>
<property name="name">
<column name="name"/>
</property>
<property name="strength">
<column name="strength"/>
</property>
<property name="strengthUnits">
<column name="strength_units"/>
</property>
</class>
</hibernate-mapping>
ПРИМЕЧАНИЕ здесь я пытался отобразить свой препарат в конфигурации PrescribedDrug.hbm.xml с использованием один к одному , но hibernate продолжает подсказывать мне добавить поля Drug в PrescribedDrug file ...
поле [имя] не найдено в org.example.smartgwt.shared.model.PrescribedDrug
Записи в Препарат Таблица является статической и содержит свойства назначенных препаратов.
Спасибо.