使用Java将JsonObject转换为字符串

使用Java将JsonObject转换为字符串,java,json,mongodb,gson,Java,Json,Mongodb,Gson,我通过JavaSpringAPI从mongodb获得了一些值。对于下图中的sofTagList,我得到了List。我试图访问标记名内的值字段。当我创建列表时,每次都会得到空值。我尝试用谷歌搜索并将JsonObject转换为字符串。但这无助于解决我的问题。我正在使用com.google.gson.JsonObject包。这是我试图访问的mongodb的屏幕截图 编辑1:添加了代码段 if(null!=person.getSofTagList()){ Lis

我通过JavaSpringAPI从mongodb获得了一些值。对于下图中的
sofTagList
,我得到了
List
。我试图访问
标记名
内的
字段。当我创建列表时,每次都会得到空值。我尝试用谷歌搜索并将JsonObject转换为字符串。但这无助于解决我的问题。我正在使用
com.google.gson.JsonObject
包。这是我试图访问的mongodb的屏幕截图

编辑1:添加了代码段

if(null!=person.getSofTagList()){
                    List<JsonObject> jsonObj = person.getSofTagList();
                    System.out.println("Size is   ========>>  "+ jsonObj.size());
                    for (JsonObject jsonObject : jsonObj) {
                        System.out.println("GetTag Name         "+jsonObject.getAsJsonObject("tagName"));                       
                    }
                }
if(null!=person.getSofTagList()){
List jsonObj=person.getSofTagList();
System.out.println(“大小为=====>>”+jsonObj.Size());
for(JsonObject JsonObject:jsonObj){
System.out.println(“GetTag名称”+jsonObject.getAsJsonObject(“标记名”);
}
}
打印尺寸时,我得到30,如图所示。它在for循环中循环30次,但所有时间为空是输出。
希望我的问题清楚。提前感谢。

更新for循环中的代码,如下所示:

 JSONArray msg = (JSONArray) jsonObject.get("tagName");
            Iterator<String> iterator = msg.iterator();
            while (iterator.hasNext()) {
                System.out.println(iterator.next());
            }
JSONArray msg=(JSONArray)jsonObject.get(“标记名”);
迭代器迭代器=msg.Iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}

@NiksTyagi:检查一下。我添加了一些代码。@Java Beginer您可以在循环内的Eclipse中附加一个调试断点,并检查
jsonObject
的内容(如果有)。好的。让我试着知道结果@Rakesh@Java Beginer您能更新代码并让我知道结果吗。我会让你知道的。顺便说一句,这个JSONArray属于哪个包??org.json.simple.JSONArray;哦,我错了,我说的是JSONObject,而不是JSONObject。等我检查其他解决方案。对不起。我错误地将给定的代码段放在for循环的外部。现在我改变了。但是从eclipse中得到一些其他奇怪的错误。“无法从JsonElement强制转换为JSONArray”