小编dha*_*ner的帖子

有没有办法在Hibernate中加载对象而无需编写查询或具有ID?

我可以将对象从Java持久化到DB中:

表人:

varchar name  
varchar groupID  
varchar emailAddress  
key on (name, groupID)
Run Code Online (Sandbox Code Playgroud)

而在Java中

Person foo = new Person("dhackner", "3");  
session.persist(foo);
Run Code Online (Sandbox Code Playgroud)

这两个论点构成了关键.在这种情况下,name和groupID是DB中的唯一键,因此足以清楚地标识表中的任何特定行(可以有多个"dhackner"条目,多个"group 3"条目,但只有一个"dhackner,group" 3"进入).

假设设置正确,该代码将成功生成

    name | groupID | emailAddress  
dhackner |       3 |           ""
Run Code Online (Sandbox Code Playgroud)

我希望能够在不编写查询或使用任何自动生成的ID的情况下执行相反的操作:

表人:

    name | groupID | emailAddress  
dhackner |       3 |  "something"  
dhackner |       4 |     "foobar"  
   other |       3 |     "barfoo"
Run Code Online (Sandbox Code Playgroud)

在Java中:

Person foo = new Person("dhackner", "3");  
foo.load(); // something like this
Assert.assertEquals(foo.getEmailAddress(), "something");
Run Code Online (Sandbox Code Playgroud)

java orm hibernate persist

2
推荐指数
1
解决办法
1413
查看次数

标签 统计

hibernate ×1

java ×1

orm ×1

persist ×1