Java技术-将java中Map类型数据转化为json数据并以Ajax形式返回

JavaEE 专栏收录该内容
6 篇文章 0 订阅

Java技术-将java中Map类型数据转化为json数据并以Ajax形式返回

一、自定义工具类(简单易用)-下面是我写的一个简单的工具类

package com.test.util;

import java.io.IOException;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONObject;
import org.apache.struts2.ServletActionContext;
public class ToAjaxJsonString{	
	// 将Map格式数据转换为JSON类型数据并返回,否则返回null
	public static String ajaxJson(Map<String, Object> jsonMap) {
		JSONObject jsonObject = JSONObject.fromObject(jsonMap);//将Java对象(如:Map数据,ArrayList等)转换为JSONObject类型
		//首先jsonObject.toString()将JSONObject类型数据转换为json字符串!
		return ajax(jsonObject.toString(), "application/json");//然后调用ajax()方法将json格式字符串以Ajax形式返回前端
	}
	//将json格式字符串以AJAX形式返回,否则返回null
	public static String ajax(String content, String type) {
		try {
			HttpServletResponse response = ServletActionContext.getResponse();
			response.setContentType(type + ";charset=UTF-8");
			response.setHeader("Pragma", "No-cache");
			response.setHeader("Cache-Control", "no-cache");
			response.setDateHeader("Expires", 0);
			response.getWriter().write(content);
			response.getWriter().flush();
		} catch (IOException e) {
			e.printStackTrace();
		}
调用示例		return null;
	}		
}

二、调用自定义工具类处理Map数据并以Ajax技术将json数据返回 -示例

下面是我写的一个简单的工具类调用例子:

package com.test.bean;
import java.util.HashMap;
import java.util.Map;

importcom.test.util.ToAjaxJsonString; //引入自定义的工具类

public class Test { 
	public static void main(String[] args) { 
			Map<String, Object> map = new HashMap<String, Object>();       
			map.put( "name", "zhangsan" );  
			map.put( "age", new Integer(20) ); 
			map.put( "sex", "male" ); 
			map.put( "bool", Boolean.TRUE );       
			System.out.println(ToAjaxJsonString.ajaxJson(map));// 输出{"name":"zhangsan","age":20,"sex":"male","bool":"TRUE",}
			return ToAjaxJsonString.ajaxJson(map);  //返回json格式数据{"name":"zhangsan","age":20,"sex":"male","bool":"TRUE",}
		}
}
更多内容,可参考:http://www.cnblogs.com/hitwtx/articles/2468633.html
  • 0
    点赞
  • 0
    评论
  • 3
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值