开发web项目时,经常会使用到的页面脚本语言javascript,使用它能让页面展示上的效果更多彩。

  今天就来说一下,从数据库中获取到数据后在页面上的展示方式:

  1.数据库取出数据放入list<object>,将其使用jsonobject封装成json串:

  <select id="selectAll" resultMap="BaseResultMap"
parameterType="java.util.Map">
select
<include refid="Base_Column_List" />
from user
  </select> 业务层将数据返回到控制层代码简单,此处略过。也可参考我的另一篇随笔:关于spingmvc
此处是list数据的json封装,代码如下:

public void writeChartJson(List<Object> list, HttpServletResponse res)
throws IOException {
int size = list.size();
StringBuffer sb = new StringBuffer();
sb.append("{");
sb.append("\"count\":" + size + ",");
sb.append("\"resultList\":");
JSONArray jsonArray = JSONArray.fromObject(list);
sb.append(jsonArray);
sb.append("}");
StringBuffer temp = new StringBuffer();
StringTokenizer token = new StringTokenizer(sb.toString(), "\n\r\t");
while (token.hasMoreTokens())
temp.append(token.nextToken());
res.setContentType("text/json; charset=utf-8");
System.out.println(temp.toString());
res.getWriter().print(temp.toString());
}

2.前台jsp页面,首先引入jquery.js,请求后台获取list的json数据并解析:

  $(function() {
$.ajax({
type: "POST",
url: "<%=basePath%>admin/xxx/getXXX.do",
data:{},
success: function(msg){
var count = msg.count;
if(count > 0){
for(var i=0;i<count;i++){
var id=msg.resultList[i].id;
var name=msg.resultList[i].name;
alert(id);
} }else{
alert("无数据");
}
},
error: function(){
alert("出错");
}
});
});

后台获取的map集合封装json,代码和上面类似,不在赘述。

前台请求获取代码同上,处理不同如下:

success: function(msg){
var count = msg.count;
if(count > 0){
var arr = msg.resultList[0];
for(var key in arr){
alert("key:"+key+",value:"+arr[key]);
var ar1=arr[key][0];
var ar2=arr[key][1];
alert(ar1);
}
}else{
alert("无数据");
}
}

以上就是个人使用js对json数据的解析处理了,做个小例子,记录一下曾经使用过。

最新文章

  1. c# socket 编程
  2. Mybatis拦截器
  3. C#写爬虫,版本V2.1
  4. 转 jsp中 session的简单用法
  5. spring+mongo
  6. ajax返回值给上层函数的方法。
  7. (转)JS保留两位小数 四舍五入函数
  8. BZOJ 2176 Strange String (最小表示法)
  9. 会话控制之session和cookie(20161107)
  10. Privoxy代理的使用
  11. sparkStreaming 与fafka直接方式 进行消费者偏移量的保存如redis 里面 避免代码改变与节点重启后的数据丢失与序列化问题
  12. WPF Application 类介绍以及怎样修改启动方式
  13. 画线函数Glib_Line算法的研究
  14. Hadoop大数据初入门----haddop伪分布式安装
  15. Numba:高性能Python编译器
  16. 12、xamarin form中实现H5 网页唤醒微信支付的方法
  17. cat 命令|more命令|less命令
  18. delphi实现截全屏功能
  19. 修改Windows远程桌面端口
  20. Eclipse 添加JSP模板

热门文章

  1. lib 和 dll 的区别、生成以及使用详解
  2. 用shader使图片背景透明
  3. android开发在adapter中使用反射添加元素
  4. my-view-isnt-reflecting-changes-ive-made-to-the-underlying-tables
  5. 微信开发模式(php)
  6. 【M26】限制某个class所能产生的对象数量
  7. JQuery Plugin 1 - Simple Plugin
  8. Android动画的实现 上
  9. linux对外开放某个端口命令
  10. swift3.0 中NSNotification 的使用