hibernate
框架
yangyongdehao30
这个作者很懒,什么都没留下…
展开
-
hibernate4saveorUpdate更新也会插入
最近使用saveOrUpdate的时候,发现一只不更新数据。按文档上说明应该是:当数据有Id的时候就进行更新,但是结果没有今天具体研究了一下,saveOrUpdate其实不是针对于数据本身(Id),而是对象,可以理解为:有新对象则插入,已有对象就更新。所以想要达到更新效果,自然需要用从数据库查询出来的对象了eg.@Resource原创 2016-11-22 16:30:09 · 1899 阅读 · 0 评论 -
hibernate三态
hibernate对象有3中状态: 1.Transient:瞬时态 2.Persistent:持久态 3.Detached:脱管态 瞬时态和脱管态: 1.都会被垃圾回收机制回收掉 2. 瞬时态在数据库中没有与之对应的记录,脱管态是相反的 运行原理: 1.实例化对象:在内存中分配空间 2.session.save(): 1.照相对象放原创 2016-11-24 13:54:34 · 465 阅读 · 0 评论 -
hibernate缓存
在hibernate中缓存不需要做任何配置,但多了解一下还是很有助于写代码的借用缓存,有时候分开查询比联合查询的速度更快。缓存类型: 1.一级缓存 2.二级缓存 3.查询缓存 一级缓存:1.也叫做session级的缓存,它的生命周期也session一样,当session关闭的时候一级缓存清空 2. 一级缓存只能缓存对象 l原创 2016-11-24 13:58:12 · 236 阅读 · 0 评论 -
hibernate 锁
hibernate锁: 悲观锁:会发出for update语句将数据锁住,直到数据访问完了才释放锁 乐观锁:事实上它不是锁,采用的是数据版本的方式。 在使用悲观锁的时候,lazy加载会失效,会发出select .....for update. 其他人无法访问这条数据悲观锁缺点:并发性差。 乐观锁: 采用的是数据版本的方式 只要在数据库里面原创 2016-11-25 11:13:59 · 434 阅读 · 0 评论