SpringMVC中输出json

来源:互联网 发布:股票t0交易平台源码 编辑:程序博客网 时间:2024/05/26 12:01

// header 常量定义
    private static final String DEFAULT_ENCODING = "GBK";
    private static final boolean DEFAULT_NOCACHE = true;
    // Content Type 常量定义
    public static final String TEXT_TYPE = "text/plain";
    public static final String JSON_TYPE = "application/json";
    public static final String XML_TYPE = "text/xml";
    public static final String HTML_TYPE = "text/html";
    public static final String JS_TYPE = "text/javascript";
    public static final String EXCEL_TYPE = "application/vnd.ms-excel";
    public static int PAGE_NUMERIC = 10;



protected HttpServletResponse initResponseHeader(final String contentType,

            final HttpServletResponse response) {
        // 分析headers参数
        String encoding = DEFAULT_ENCODING;
        boolean noCache = DEFAULT_NOCACHE;
        // 设置headers参数
        String fullContentType = contentType + ";charset=" + encoding;
        response.setContentType(fullContentType);
        if (noCache) {
            setNoCacheHeader(response);
        }

        return response;
    }




/**
     * 直接输出内容的简便函数.
     */
    protected void render(final String contentType, final String content,
            final HttpServletResponse response) {
        HttpServletResponse resp = initResponseHeader(contentType, response);
        try {
            resp.getWriter().write(content);
            resp.getWriter().flush();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

/**
     * 输出JSON,可以接收参数如: [{'name':'www'},{'name':'www'}],['a','b'],new
     * String[]{'a','b'},合并如下:jsonString = "{TOTALCOUNT:" + totalCount + ",
     * ROOT:" + jsonString + "}";
     *
     * @param jsonString
     *            json字符串.
     *
     */
    protected void outJson(final String json, final HttpServletResponse response) {
        render(JSON_TYPE, json, response);
    }

String json = JSONObject.fromObject(map).toString();
                outJson(json, response);
                return;


0 0
原创粉丝点击