java中json字符串怎么转json对象

StringjsonStr="[{'id':'11','parentId':'root','refObj':{'existType':'exist','deptType'... String jsonStr ="[{'id':'11','parentId':'root','refObj':{'existType':'exist','deptType':'emp','treeNodeType':'dept'}]"

java中怎么去获取jsonStr中的refObj里的existType的值
展开
 我来答
易建议
2015-11-18 · 喜欢分享的人都容易获得幸福感~
易建议
采纳数:344 获赞数:1342

向TA提问 私信TA
展开全部
给你个思路:
1、将jsonstr转为json对象 (这个可以用net.sf.json.JSONObject第三方包来实现)

2、根据refObj 这个key获取{'existType':'exist','deptType':'emp','treeNodeType':'dept'},把获取的这数据再转为json.
3、将转后的json根据existType就能取得值了 。
tianweisong86
2015-11-18 · TA获得超过781个赞
知道小有建树答主
回答量:483
采纳率:100%
帮助的人:284万
展开全部
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        String jsonStr = "[{'id':'11','parentId':'root','refObj':{'existType':'exist','deptType':'emp','treeNodeType':'dept'}}]";
        List<JSONObject> list = JSON.parseArray(jsonStr, JSONObject.class);
        for (JSONObject object : list) {
            System.out.println(object.getJSONObject("refObj").getString("deptType"));
        }
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b482631
2015-11-18 · TA获得超过787个赞
知道小有建树答主
回答量:654
采纳率:100%
帮助的人:660万
展开全部
	public static void test4() {
String jsonStr = "[{'id':'11','parentId':'root','refObj':{'existType':'exist','deptType':'emp','treeNodeType':'dept'}}]";
Gson gson = new Gson();
Type type = new TypeToken<List<Bean>>() {
}.getType();
List<Bean> list = gson.fromJson(jsonStr, type);
for (int i = 0; i < list.size(); i++) {
Bean bean = list.get(i);
// 这就是你需要的值
String existVal = bean.getRefObj().getExistType();
System.out.println(existVal);
}
}

class Bean {
private String id;
private String parentId;
private RefObj refObj;

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getParentId() {
return parentId;
}

public void setParentId(String parentId) {
this.parentId = parentId;
}

public RefObj getRefObj() {
return refObj;
}

public void setRefObj(RefObj refObj) {
this.refObj = refObj;
}

@Override
public String toString() {
return "Bean [id=" + id + ", parentId=" + parentId + ", refObj=" + refObj + "]";
}
}

class RefObj {
private String existType;
private String deptType;
private String treeNodeType;

public String getExistType() {
return existType;
}

public void setExistType(String existType) {
this.existType = existType;
}

public String getDeptType() {
return deptType;
}

public void setDeptType(String deptType) {
this.deptType = deptType;
}

public String getTreeNodeType() {
return treeNodeType;
}

public void setTreeNodeType(String treeNodeType) {
this.treeNodeType = treeNodeType;
}

@Override
public String toString() {
return "RefObj [existType=" + existType + ", deptType=" + deptType + ", treeNodeType=" + treeNodeType + "]";
}
}

另外,你的json有错哦!在后面少了一个‘}’

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-11-18
展开全部
String jsonStr ="{'id':'11','parentId':'root','refObj':{'existType':'exist','deptType':'emp','treeNodeType':'dept'}}";
JSONObject jsonObj = new JSONObject(jsonStr);
JSONObject refObj = new JSONObject(jsonObj.getString("refObj"));
String existType = refObj.getString("existType");
System.out.println(existType);
jar使用的是org.json.jar
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式