json数据及使用jackson转换数据
json:JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。
http://www.bejson.com/ 在线测试工具:
检查字符串是否是合法json格式
将不规范的合法json数据格式化操作
常用的json格式:
对象类型
1.数组/集合类型
2.混合模式
json格式的数据是作为前后台进行数据交换的一种数据格式。后台一般从数据库中获取的数据一般都是对象和集合,如何将对象和集合的数据转换成json格式的数据???
-
使用jackson转换数据
使用步骤:
1.下载jar包添加到项目中
2.封装一个学生实体:
3.将对象转换成json格式
1).servlet将对象转json
2).页面中通过异步请求获取数据
4.将集合转换成json格式
1).List
2).Map
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //创建一个学生对象 Student student1=new Student(1, "小明"); Student student2=new Student(2, "小红"); List<Student> list1=new ArrayList<Student>(); list1.add(student1); list1.add(student2);
Student student3=new Student(3, "小明1"); Student student4=new Student(4, "小红2"); List<Student> list2=new ArrayList<Student>(); list2.add(student3); list2.add(student4);
Map<String, List<Student>> map=new HashMap<String, List<Student>>(); map.put("list1", list1); map.put("list2", list2);
//将该学生对象转换成son格式数据响应给前台 ObjectMapper mapper=new ObjectMapper(); String jsonStr = mapper.writeValueAsString(map);
System.out.println(jsonStr); response.getWriter().print(jsonStr); } |
前台数据获取: