java编程:浅谈java的缓存及软引用知识点
时间:2013-03-16 21:10 来源: 翻译器在线 作者:周恩军
随便一个系统都免不了查询,而查询实际上就是从数据库获取数据而已,实际使用的时候会经常出现这么一种情况,就是点了下一页,然后点回上一页。如果是最简单的设计,那就是每一次转页都从数据库中重新获取数据,然后把数据交回给用户,但这么做无疑会加大数据库压力,而且在查询数据更新速度慢的数据时,这么做的意义就变得很小了。换一个角度来想,既然一开始就已经查了一次,那么当点回上一页的时候,直接把第一次的数据直接返回,那么就跟数据库没关系了。这样也就是使用缓存来进行,而作为构建CACHE,软引用是非常合适,因为GC回收的时候会尽量拖长软引用的生存时间,到了内存实在要爆炸了,才会把仅仅有软引用指向的对象回收掉。

软引用是SoftReference对象,使用的时候只要new SoftReference(obj,q),第一个参数obj是要引用的对象,q是一个引用队列,当软引用的对象被回收后,该SoftReference对象就会被放入队列里,然后只要遍历队列就可以达到清理SoftReference对象的目的了。
我做了一个网站的DEMO,myeclipse加载后运行,输入data?page=的URL,注意看控制台输出的信息。

软引用是SoftReference对象,使用的时候只要new SoftReference(obj,q),第一个参数obj是要引用的对象,q是一个引用队列,当软引用的对象被回收后,该SoftReference对象就会被放入队列里,然后只要遍历队列就可以达到清理SoftReference对象的目的了。
我做了一个网站的DEMO,myeclipse加载后运行,输入data?page=的URL,注意看控制台输出的信息。
本文来源 我爱IT技术网 http://www.52ij.com/jishu/369.html 转载请保留链接。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
