对不起,不清楚如何提出这个问题.这是我的情景:
调节器
HostSite hostSite=new HostSite();
hostSite.setUrl("www.somesite.com");
// hostSite.getId() is null, naturally
hostSiteService.saveHostSite(hostSite);
// hostSite.getId() is still null
Run Code Online (Sandbox Code Playgroud)
HostSiteServiceImpl
public void saveHostSite(HostSite hostSite) {
hostSiteDAO.save(hostSite);
}
Run Code Online (Sandbox Code Playgroud)
HostSiteDAOImpl
public void save(HostSite hostSite) {
if(hostSite!=null) {
getEntityManager().merge(hostSite);
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我不是在任何地方修改实体对象引用.我觉得合并操作会使用已在表级初始化的数据更新持久化对象.在我的情况下,它只是自动生成的id.但是可能还有其他的东西,例如创建时间戳等等......是否有我需要做的事情,在持久化对象上设置这个生成的id?操作本身没有问题.记录将使用生成的id保存在表中.
我正在将Hibernate 4用于JPA提供程序.
| 归档时间: |
|
| 查看次数: |
1989 次 |
| 最近记录: |