对象的状态及转换

对象的状态:

1临时状态(新建状态):没有保存到数据库之前的状态

2持久化状态:(托管状态)数据库有,也在session缓存中

3游离状态:(脱管状态)数据库中有,但session里面没有

4删除状态:数据库没有,session也没有

 

对象的转换:

临时到持久化:

调用sava():设置对象的id 不会出错,persist():设置对象id 则会报错

 

无到持久化:

get()即时加载:

1立即调用SQL语句,

2若数据库中没有对应的记录则返回null,

3Session关闭了之后也可以使用对象.

load()延迟加载 

1:不会调用SQL语句,用的时候则调用SQL语句,

2若数据库没有相应的数据则出错,

3Session若关闭,会出现懒加载的问题.

 

持久化状态到游离状态:

close()

evict()将对象中的session移除

 

游离状态到持久化状态:

update()

1.如果要更新一个持久化的对象,则可以不用调用update()方法

2.如果要更新一个游离状态的对象,则需要调用update()方法

saveorupdate()

如果数据库中没有记录则添加,如果指定了id,则修改记录

 

持久化状态到删除状态

调用方法delete()

 

游离状态到删除状态

调用方法delete()

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值