前台一次性加载完数据,然后在刷新页面不会向数据库发送请求了,数据还是能加载,请问怎么实现。java web
解决方案 »
- Could not initialize class com.dao.HibernateSessionFactory
- 如何用java获取excel中选中部分,使用的是poi包。
- hql join的时候只取部分字段出错
- 请问下:在servlet和applet通信 servlet传序列化地想的问题
- 用JavaScript怎么去实现,一个按钮提交多个action?那位朋友帮我弄段代码让我研究下哈!谢谢啦!
- xfire调用webservice接口报错
- 关于hibernate新特性dynamic-class
- mysql查询语句的排序是怎样的?
- 在类中取得当前文件所在的相对路径与绝对路径
- 用JB7做的JSP+BEAN,运行正常,但是把JSP文件和CLASS文件考到TOMCAT相应目录下就出错
- java中根据经纬度怎样获取附近5km的数据?
- JAVA 下拉级联 城市选择的问题
如果不想从服务器下载数据,那就只能在浏览器的Cookies里保存数据了。
(把这些数据放入缓存里 ehcache memcached等缓存服务)
然后在刷新页面不会向数据库发送请求了,(网页刷新请求都是从缓存中去取数据)
(数据在加载回来)
(更新数据库的时候再对缓存中的数据更新)一般常用于首页,查询页等数据量大的页面.基本上是这个流程.访问量大的可以采用缓存集群
static 也可以 不过大数据量还是选择一个缓存架构比较好.
下面手写代码只是个例子public static List<String> cahcheList = null;public String excute(){
//执行返回数据给前台 List<String> returnList = getData();}public List<String> getData(){
if(null != cacheList){
return cacheList;
}else{
cacheList = getDataFromDB();
return cacheList;
}
}public List<String> getDataFromDB(){
//从数据库获取数据返回
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("n");
return list;
}不过看你的需求 大概static 就可以了..数据量不是很大
不过有更新/添加/或者删除你都需要维护这个static 的缓存变量.
不在本地存的话,刷新,不加载,是不可能的!
2.用程序把树可以写成静态文件(html)