NutzCN Logo
问答 把json字符转成hashmap,然后通过key取到对应的字符串
发布于 2422天前 作者 qq_39fcc7a4 2576 次浏览 复制 上一个帖子 下一个帖子
标签:

@At("/save")
@Ok("json")
public void Save(HttpServletRequest request)
{
String json = request.getParameter("data");//data为student对象,有name、age、grade这些属性
HashMap<String, String> map=(HashMap) Json.fromJson(json);//此处写的好像不对
String name=map.get("name");
}

15 回复

用"插入代码或日志片段"发一下

@At("/save")
 @Ok("json")
 public void Save(HttpServletRequest request)
 {
 String json = request.getParameter("data");//data为student对象,有name、age、grade这些属性
 HashMap<String, String> map=(HashMap) Json.fromJson(json);//此处写的好像不对
 String name=map.get("name");
 }

json变量的值是什么

[{"id":"32","name":"张三","sex":"女","gradeName":"五年级","math":90}]

这是个List<Map>

@At("/save")
@Ok("json")
public void Save(@Param("data")String json_data) {
    List<NutMap> list = Json.fromJsonAsList(NutMap.class, json_data);
    NutMap map = list.get(0);
    String name=map.get("name");
}

我先试一下啊,谢谢哈哈

这样的话我只能通过list的下标取值,不能通过map的key取对应的属性值了么?

我看错了,应该可以的,谢谢 大佬,哈哈

试了我给的代码没

	@At("/save")
	@Ok("json")
	public void Save(@Param("data")String json_data) {
	    List<NutMap> list = Json.fromJsonAsList(NutMap.class, json_data);
	    NutMap map = list.get(0);
	    String name=(String) map.get("name");
	}
我感觉应该是可以的,电脑在公司没带回来,明天过去试一下

那段json, 首先是个List(或者叫数组), 里面的元素才是Map,分层取

要是有Pojo,这样写更方便

List<NutMap> users = Json.fromJsonAsList(User.class, json_data);
for (User user : users) {
    System.out.println(user.getName());
}

嗯,我看懂了,谢谢您的指导,麻烦了

我试过了,可以了,谢谢

添加回复
请先登陆
回到顶部