Hibernate中怎么对addMate进行修改

发布时间:2021-07-27 17:27:00 作者:Leah
来源:亿速云 阅读:100

本篇文章给大家分享的是有关Hibernate中怎么对addMate进行修改,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

rnate修改addMate方法,可能好多人还不了解addMate方法,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

在Hibernate中,最核心的概念就是对PO的状态管理。一个PO有三种状态:

1、未被持久化的VO,此时就是一个内存对象VO,由JVM管理生命周期

2、已被持久化的PO,并且在Session生命周期内,此时映射数据库数据,由数据库管理生命周期

3、曾被持久化过,但现在和Session已经detached(分离的)了,以VO的身份在运行

这种和Session已经detached的PO还能够进入另一个Session,继续进行PO状态管理,此时它就成为PO的第二种状态了。这种PO实际上是跨了Session进行了状态维护的。

当你你需要Hibernate修改addMate方法时,可以使用一下方法:

public void addMate(Cat cat, Mate mate) {   Session session = ...;  Transacton tx = ...;  session.saveOrUpdate(cat);  cat.addMate(mate);  tx.commit();  session.close();  };

如上,如果业务层的程序员传进来的是一个已经持久化过的PO对象,那么Hibernate会更新cat对象(假设业务层的程序员在Session外面修改过cat的属性),如果传进来的是一个新new出来的对象,那么向数据库save这个PO对象。

BTW: Hibernate此时究竟采取更新cat对象,还是save cat对象,取决于unsave-value的设定。

这样,业务层的程序员就不必再操心PO的状态问题了,对于他们来说,不管cat是new出来的对象,只是一个VO也好;还是从数据库查询出来的的PO对象也好,全部都是直接Hibernate修改addMate方法就OK了:

daoimple.addMate(cat, mate);

以上就是Hibernate中怎么对addMate进行修改,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. 使用Hibernate怎么对Session进行获取
  2. 如何在eclipse中对hibernate框架进行配置

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

hibernate

上一篇:Linq中怎么对XML文档进行修改

下一篇:VB.NET中怎么修改系统时间

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》