Servlet编码
package com.etc.action; import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; import java.util.TreeMap; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; import com.etc.mc.CJCount; /**向客户端提供json数据*/ @WebServlet("/CJServlet") public class CJServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //post乱码处理 request.setCharacterEncoding("utf-8"); // 设置响应数据类型 response.setContentType("text/html"); // 设置响应编码格式 response.setCharacterEncoding("utf-8"); // 获取out对象 PrintWriter out = response.getWriter(); //组织json数据 TreeMap<String, Float> map=null; try { map=CJCount.main(); } catch (Exception e) { System.out.println("获取数据出错"); } //通过构建map集合转换为嵌套json格式数据 HashMap jsonmap = new HashMap(); jsonmap.put("mytitle","长江收盘价折线图"); jsonmap.put("mylegend", "收盘价"); jsonmap.put("prolist", map); String str =JSON.toJSONString(jsonmap); System.out.println(str); out.print(str); out.flush(); out.close(); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
JSP视图处理JSON数据
$(function() { var mytitle; var mylegend; var xdata = new Array(); var ydata = new Array(); $.getJSON("CJServlet", function(data) { mytitle = data.mytitle; mylegend = data.mylegend; //获取x轴数据 console.log(data); $.each(data.prolist, function(i, n) { xdata.push(i); }); //获取y轴数据 $.each(data.prolist, function(i, n) { ydata.push(n); }); console.log(xdata); console.log(ydata); //执行函数 showdata(mytitle, [ mylegend ], xdata, ydata); }); });