我有一个包含五列的表格。这两列一起构成了我的表的主键。我正在尝试使用hibernate实例化一个与该表对应的Entity类。问题是如何告诉hiberante主键不仅仅是类的一个字段而是两个字段。我不希望hiberante为我创建数据库架构,因为我已经使用所有必要的主键设置来创建它。
我已经阅读了复合键,但它认为这不适合我。毕竟,我只有一个表,我的代码中不会有一对多或类似的基数。
我试过这样的东西,显然是行不通的。
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="blog.Message" table="MESSAGES">
<id name="title" column="MESSAGE_TITLE"></id>
<id name="author" column="MESSAGE_AUTHOR"></id>
<property name="body" column="MESSAGE_BODY"/>
// ....AND TWO MORE FIELDS
</class>
</hibernate-mapping>
这样做的方法是什么?复合键是必须的吗? 提前致谢
答案 0 :(得分:1)
理想情况下,如果可能的话,你应该避免使用具有休眠功能的自然键。如果你创建一个id列,Hibernate可以更好地工作,hibernate可以用它来管理行的标识。