随笔分类 - hibernate
摘要:在Hibernate框架中,当我们要访问的数据量过大时,明显用缓存不太合适,因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,这时Hibernate用懒加载机制来弥补这种缺陷,但是这只是弥补而不是用了懒加载总体性能就提高了。我们所说的懒加载也被称为延迟加载,它在查询的时候不会立刻访问数据库,而是返回代理对象,当真正去使用对象的时候才会访问数据库。实现懒加载的前提:1 实体类不能是final的2 能实现懒加载的对象都是被CGLIB(反射调用)改写的代理对象,所以不能是final修饰的3 须要asm,cglib两个jar包4 相应的lazy属性为true5 相应的fetch属性为select
阅读全文
摘要:缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并发访问和缓存数据的生命周期。 Hibernate的缓存包括Session的缓存和SessionFactory的缓存,其中SessionFactory的缓存又可以分为两类:内置缓存和外置缓存。Session的缓..
阅读全文
摘要:Ehcache中不仅可以用配置文件来配置缓存,而在代码中也可以实现同样的功能。CacheManager singletonManager = CacheManager.create();Cache memoryOnlyCache = new Cache(“testCache”, 50000, false, false, 8, 2);Cache test = singletonManager.getCache(“testCache”);删除只需要调用singletonManager.removeCache(“testCache”);Shotdown CacheManager在使用完Ehcache
阅读全文
摘要:当库里没有要查的数据时:使用session.load()会报如下错误:org.hibernate.ObjectNotFoundException:No row with the given identifier exists:使用session.get()时会报空指针异常:java.lang.NullPointerException
阅读全文

浙公网安备 33010602011771号