zoukankan      html  css  js  c++  java
  • Ajax异步加载数据及Redis缓存

    针对网页分类条目的动态加载,图为页面的Head部分。

    //categoryListServlet准备分类数据
    ProductService service = new ProductService();
    List<Category> categoryList = service.findAllCategoryList();
    response.setContentType("text/html; charset=utf-8");
    Gson gson = new Gson();
    String json = gson.toJson(categoryList);
    response.getWriter().write(json);

    head.jsp异步加载js部分:

    <script type="text/javascript">
              //head.jsp加载完成后,ajax异步加载分类条
              $(function(){
                  
                  var content= "";
                  $.post(
                          "${pageContext.request.contextPath}/categoryList",
                          function(data){
                              //[{"cid":"xxx","cname":"aaa"},{"cid":"xxx","cname":"aaa"}]
                              for(var i=0;i<data.length;i++){
                                  content += "<li><a href='#'>"+data[i].cname+"</a></li>";
                              }
                              //将拼接好的类别,写入到页面
                              $("#categoryUI").html(content);  
                          },
                          "json"
                  );
                  
              });
            
            
            </script>

    缓存逻辑:

      1.查询缓存中有无分类数据

      2.有,直接查询缓存;

       无,则通过hibernate查询,并添加到缓存中

      3.将查询到的数据返回。

    //查询缓存中有无分类数据,如果没有查询写入缓存
    Jedis jedis = JedisPoolUtils.getJedis();
    String categoryListJson = jedis.get("categoryListJson");
    if(categoryListJson == null){
        System.out.println("缓存没有数据 查询数据库");
        ProductService service = new ProductService();
        List<Category> categoryList = service.findAllCategoryList();
        Gson gson = new Gson();
        categoryListJson = gson.toJson(categoryList);
        jedis.set("categoryListJson", categoryListJson);
    }
    
    //准备分类数据    
    response.setContentType("text/html; charset=utf-8");
    response.getWriter().write(categoryListJson);
  • 相关阅读:
    百度brpc 压测工具rpc_press解析
    Reactor反应器模式 (epoll)
    hive和hbase的区别
    Hive和HBase
    入门HBase,看这一篇就够了
    Docker保存修改后的镜像
    怎样将本地文件上传到docker容器
    Docker 安装tomcat访问空白页问题解决办法
    Centos中查看系统信息的常用命令
    Docker 镜像加速
  • 原文地址:https://www.cnblogs.com/zemul/p/10215978.html
Copyright © 2011-2022 走看看