09-hibernate实战 hibernate中对象的三种状态

hibernate中对象的三种状态

1.瞬时状态

2.持久状态

3.脱管(游离)状态


区别方法:根据数据库有没有这个记录,以及会不会被Session对象管理来区别对象状态。

1.瞬时状态特点

数据库中没有这个对象的记录,与hibernate无关,不被Session对象管理。

例如User user =new User();这个new出来的user就处于瞬时状态。


2.持久状态特点

数据库中有这个对象的记录,与hibernate有关,对象改变hibernate知道,会被Session对象管理。


3.脱管状态特点

数据库中有这个对象的记录,与hibernate无关,不被Session对象管理。





4.update方法在对象处于游离状态的时候调用
5.save方法在对象处于瞬时状态调用
6.saveOrUpdate方法,不知道是瞬时状态还是脱管状态时候调用。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会编程的阿强

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值