Hibernate-关于hibernate save方法的返回值

发布于 2016-10-29 09:14:11 字数 249 浏览 1390 评论 3

想获取插入的这条记录的主键。
查了网上关于save返回值的说法,一种说是返回id,另一种是说save(object)会把主键写入object。
但是两种都试过返回的都是0,不明白为什么。

Serializable test = session.save(userLink);
​tx.commit();
System.out.print((Integer)test + " " + userLink.getLinkId());

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

偏爱自由 2017-10-24 06:42:17

只要你的model保存成功后,主键是自动生成的序列就会自动绑在model里面。

甜柠檬 2017-02-03 05:17:40

返回值什么不重要,注意一点,hibernate在创建对象之前,会把普通对象转化从游离态变成持久态,当处于同一个事务的时候,调用save方法会自动在对象赋上ID值,当然前提是实体对象要采用主键策略。

泛泛之交 2016-11-29 10:19:59

注意看看你的import的session是不是hibernate里的Session

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文