
Hibernate
Andy_Zheng.
这个作者很懒,什么都没留下…
展开
-
hibernate延迟加载(get和load的区别)
在hibernate中我们知道如果要从数据库中得到一个对象,通常有两种方式,一种是通过session.get()方法,另一种就是通过session.load()方法,然后其实这两种方法在获得一个实体对象时是有区别的,在查询性能上两者是不同的。一.load加载方式当使用load方法来得到一个对象时,此时hibernate会使用延迟加载的机制来加载这个对象,即:当我们使用session.loa转载 2017-07-25 09:26:50 · 215 阅读 · 0 评论 -
Hibernate一级缓存管理-evict和clear的用法
evict方法:从一级缓存中移除一个对象clear方法:将一级缓存中的对象全部移除/** * 验证缓存管理的方法evict * 执行完evict之后,将会将id为5的user对象从一级缓存中移除,再次访问的话将重新查询数据库 * 该用例将发出2个select语句 */ @Test public void testEvict(){ Session session原创 2017-08-01 15:56:37 · 2444 阅读 · 0 评论 -
Hibernate集合映射inverse和cascade详解
1、到底在哪用cascade="..."?cascade属性并不是多对多关系一定要用的,有了它只是让我们在插入或删除对像时更方便一些,只要在cascade的源头上插入或是删除,所有cascade的关系就会被自己动的插入或是删除。便是为了能正确的cascade,unsaved-value是个很重要的属性。Hibernate通过这个属性来判断一个对象应该save还是update,如果这个对象的id转载 2017-08-02 17:03:58 · 237 阅读 · 0 评论 -
Hibernate对象的生命周期
持久化对象的状态1、 瞬时对象(Transient Object):使用new操作符初始化的对象不是立刻就持久的。它们的状态是瞬时的,也就是说它们没有任何跟数据库表相关联的行为,只要应用不再引用这些对象(不再被任何其它对象所引用),它们的状态将会丢失,并由垃圾回收机制回收2、 持久化对象(Persistent Object):持久实例是任何具有数据库标识的实例,它有持久化管理器Se原创 2017-07-26 09:19:45 · 246 阅读 · 0 评论