我是休眠的新手。如果有一个包含复合键的表,那么如何使用hibernate更新表。
答案 0 :(得分:3)
您应该可以使用composite-id
。
从链接中复制的示例:
<composite-id
name="propertyName"
class="ClassName"
mapped="true|false"
access="field|property|ClassName">
node="element-name|."
<key-property name="propertyName" type="typename" column="column_name"/>
<key-many-to-one name="propertyName" class="ClassName" column="column_name"/>
......
</composite-id>
然后,您可以使用load
代替get
Book bk1 = new Book();
bk1.setBookId(1);
bk1.setBookName("Hibernate Examples");
bk1.setAuthor("ISHTEK");
Book bk2 = (Book) session.load(Book.class, bk1);
您可以在更改价值后update
session.update(bk1);