我能想到的有两种处理方式:
(1)缓存的是一页数据的list,等到过期时间到了,自动删除。这种方案的问题是:实时性太差了!
(2)缓存的是一个一个的对象,当分页查询的时候,首先是查数据库,把数据的id查出来,然后根据id查缓存,如果查不到就再查数据库。这种方案的问题是:及时缓存里面有完整的一夜的数据,也会额外的查一次数据库。并且,如果缓存的数据被删除掉,会多次查询,才能构造出完整的一页数据,而直接查数据库的话,只需要一次查询!这两种方式的弊端都很明显,大家是如何处理的呢?
(1)缓存的是一页数据的list,等到过期时间到了,自动删除。这种方案的问题是:实时性太差了!
(2)缓存的是一个一个的对象,当分页查询的时候,首先是查数据库,把数据的id查出来,然后根据id查缓存,如果查不到就再查数据库。这种方案的问题是:及时缓存里面有完整的一夜的数据,也会额外的查一次数据库。并且,如果缓存的数据被删除掉,会多次查询,才能构造出完整的一页数据,而直接查数据库的话,只需要一次查询!这两种方式的弊端都很明显,大家是如何处理的呢?
解决方案 »
- JComboBox点击按钮事件
- 关于spark无法连接到远程openfire的问题?
- 让人迷糊的String index out of Range??新手求解
- 求救!一个Struts问题
- 求助:JEditorPane的getText()方法返回的字符怎么是这样的?
- 请说明一下java中的成员函数和数据成员概念?
- 如何用JAVA处理AUTOCAD的dwg格式文件(如在dwg文件中加入中文)
- 一个关于Integer.toBinaryString的简单问题?
- 这儿的答题效率可怕!
- Java中StringBuilder 中的append0();
- 哪个高手把这个代码逻辑简化下 谢谢
- java构造器和构造方法 在线等
查询页面加载完了,你加几条数据,数据的顺序不知道,总条数,总页数都变了。怎么处理?
感觉根据根据sql来缓存就可以