ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] # 简介 ![](https://box.kancloud.cn/4a23a90f91831e6eaf43d119208d03e9_819x120.png) Hb框架使用cglib代理生成代理对象.代理对象是继承被代理对象.如果被final修饰就无法使用 # 瞬时状态(transient) ![](https://box.kancloud.cn/975222227798517ada73157f73c86a30_839x115.png) # 持久态(persistent) ![](https://box.kancloud.cn/c628093789237f64690b7a526aac6d98_832x90.png) oid就是数据库主键 用hb,表必须有主键,没有主键用不了 # 脱管态(detached) ![](https://box.kancloud.cn/128d9f11c47af7870dae994de682a775_826x91.png) # 区分对象的三种状态 ~~~ @Test public void fun2() { Session session = HibernateUtils.openSession(); Transaction tx = session.beginTransaction(); // 瞬时状态没有持久化表示oid,没有被session管理 Customer customer = new Customer(); customer.setCust_name("老王"); // 持久化对象:有持久化表示oid,被session管理 Serializable id = session.save(customer); tx.commit(); session.close(); // 托管状态,有持久化表示oid,没有被session管理 System.out.println(customer); } ~~~ ![](https://box.kancloud.cn/0c94f868ec5a8114e51b13c99f02342b_824x110.png) # 转换 ![](https://box.kancloud.cn/00d00fece4cd6f3a28842c2309fcd60b_828x626.png) ![](https://box.kancloud.cn/cb9c0028c228626560ccb93488f7c415_836x379.png) ![](https://box.kancloud.cn/5ddee6ddf323160701546051074a9f27_839x372.png) ![](https://box.kancloud.cn/f6b050bb977ab52629f58ab36faad4ff_518x384.png) # 结论 ![](https://box.kancloud.cn/e4f01ea827afa86bc646f8c69d3315a1_844x569.png) # 自动更新数据库 ![](https://box.kancloud.cn/baef51ec6caf0bec9eeb334a9f487f2b_825x544.png)