javascript遍历java Map对象

前台ajax访问后台,后台返回Map对象的josn数据,前台javascript获取到后台返回的Map对象进行遍历


后台:

public class AjaxAction extends ActionSupport{

 private Map<String, Integer> mymap=new HashMap<String, Integer>();
 
 public String execute() throws Exception {
		mymap.put("张三",19);
		mymap.put("李四",20);
 }
 //get、set方法忽略
 
}

struts.xml:

<action name="ajaxaction" class="AjaxAction">
	<result type="json"></result>
</action>

前台jsp中ajax:

$.ajax({
	type: "POST",
	url:  "ajaxaction.action",
	data: "",
	// 接受数据格式 
	dataType : "json",
	async: false,
	// 设置请求超时时间(毫秒)。
	timeout:60000, 
	//请求失败时调用函数。	
	error: function () {}, 
	success: function(data){
		//获取mymap对象,后台Action需要提供get方法
		var my_map=data.mymap;
		for (var key in my_map) {
			//一次循环就拿出一个key、value
			alert("key = "+key+"\t value = "+my_map[key]);
		}
	}
});






JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在处理JSON对象时,我们经常需要将其内容遍历并存储到Map中,Map是一种存储键值对的数据结构,能够快速检索数据。 在编程语言中,比如Java遍历一个JSON对象并将数据存储到Map中通常需要以下步骤: 1. 解析JSON对象:使用JSON解析库(如Jackson或Gson)将JSON字符串解析为一个可操作的对象,例如在Java中可以将JSON字符串解析为一个`JsonObject`。 2. 遍历JSON对象遍历解析后的JSON对象,获取每个键值对。 3. 存储到Map中:将遍历得到的键值对存储到Map中,键为JSON对象的属性名,值为对应的属性值。 以下是一个简单的例子,假设我们使用Java语言和Gson库来完成这个任务: ```java import com.google.gson.JsonObject; import com.google.gson.JsonParser; import java.util.HashMap; import java.util.Map; public class JsonToMap { public static void main(String[] args) { String jsonString = "{\"name\":\"张三\",\"age\":30,\"city\":\"北京\"}"; JsonObject jsonObject = JsonParser.parseString(jsonString).getAsJsonObject(); Map<String, Object> map = new HashMap<>(); for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) { map.put(entry.getKey(), entry.getValue().getAsString()); // 假设所有值都是字符串类型 } // 输出map内容 System.out.println(map); } } ``` 在这个例子中,我们首先定义了一个JSON格式的字符串`jsonString`,然后使用`JsonParser`解析这个字符串为`JsonObject`。接着,我们创建了一个`HashMap`,遍历`JsonObject`的每个键值对,并将它们存储到`Map`中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值