手机网上商城-项目经验总结(七)-导航栏功能

7.前台商品类型导航栏功能

采用异步读取数据(使用gson将集合转换json数据),并使用redis缓存技术实现

该功能需要启动redis-server.exe服务器。

关键技术:

(后台)

// 处理ajax

public void findAllCategory(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

// 转成json格式list对应json格式[{"":""},{"":""},{"":""}] map

// object对应json格式{"":"","":""}

// 方式1 Gson

// Gson gson = new Gson();

// String json_list = gson.toJson(list);

// System.out.println(json_list);

// 方式2 Jsonlib

// JsonArray JsonObject

// 获取redis连接

Jedis jedis = JedisPoolUtils.getJedis();

// 获取json_list

 

String json_list = jedis.get("json_list");

System.out.println(json_list);

if (json_list == null) {

List<Category> list = cs.findAllCategories();

json_list = JSONArray.fromObject(list).toString();

// 缓存json_list

jedis.set("json_list", json_list);

// del删除

// jedis.del("json_list");

}

response.getWriter().println(json_list);

}

(前台)

<script type="text/javascript">

$(function(){

$.ajax({

url:"${pageContext.request.contextPath}/category?method=getAllCategory",

type:"post",

dataType:"json",

success:function(data){

var str = "";

$.each(data, function(i, n) {

str += "<li><a href='${pageContext.request.contextPath}/product?method=getCategoryProduct&&cid="+n.cid+"'>"

+ n.cname + "</a></li>";

$("#ul").html(str);

});

},

error:function(error){

alert(status.status);

}

});

});

</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值