设定servlet返回ajax值为json类型

来源:互联网 发布:ubuntu和centos的区别 编辑:程序博客网 时间:2024/05/15 23:46

java项目中经常需要和前端页面交互,把servlet中返回前端的数据转换成json是一种非常好的选择:
测试demo:

package com.appear.myage.servlet;import java.io.IOException;import java.io.PrintWriter;import java.util.HashMap;import java.util.Map;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.appear.myage.entity.Student;import com.appear.myage.untils.HtmlUtils;/** * Servlet implementation class TestServlet */@WebServlet("/TestServlet")public class TestServlet extends HttpServlet {    private static final long serialVersionUID = 1L;    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        Student student = new Student("张三",15,true);        Map<String, Object> map = new HashMap<String, Object>();        map.put("name", "张飞");        map.put("stu", student);        HtmlUtils.jsonToHtml(response, map);    }    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {        // TODO Auto-generated method stub    }}

最重要的工具类:

package com.appear.myage.untils;import java.io.IOException;import java.io.PrintWriter;import java.util.Map;import javax.servlet.http.HttpServletResponse;import net.sf.json.JSONObject;public class HtmlUtils {    public static void jsonToHtml(HttpServletResponse response,Map<String, Object> map){        response.setCharacterEncoding("UTF-8");        response.setContentType("application/json; charset=utf-8");        JSONObject jsonObject = JSONObject.fromObject( map );        System.out.println(jsonObject);        String jsonData = jsonObject.toString();        PrintWriter out = null;        try {            out = response.getWriter();            out.write(jsonData);        } catch (IOException e) {            e.printStackTrace();        } finally {            if (out != null) {                out.close();            }        }    }}

这个工具类java数据转json,需要以下五个jar包支持

下载地址:
http://download.csdn.net/detail/lee_0220/9651473

1 0