问题:
List<Resource> res = resourceService.findAll();
JSONArray datalist = JSONArray.fromObject(res);//这里报错there is a cycle in the hierarchy
用网上提供的方法不好使下面是Resource属性
private Integer id; private String title;
private String description;
private Set<Role> roles = new HashSet<Role>();Resource和Role有多对多的关系Role的属性
private Integer id; private String roleName;
private Set<Resource> res = new HashSet<Resource>();
解决:
List<Resource> roomList=roomService.findByHotelsid(hotelsid);
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setJsonPropertyFilter(new net.sf.json.util.PropertyFilter(){
@Override
public boolean apply(Object source, String name, Object value) {
if(name.equals("Roles")){
return true;
}else{
return false;
}
}});
JSONArray json=JSONArray.fromObject(roomList,jsonConfig);
相关推荐
在Java编程语言中,`JSONArray`是JSON库的一个重要组成部分,通常用于处理和操作JSON数组。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和易于阅读及编写,广泛应用于Web服务和应用程序...
1. **类型一致性**:确保`JSONArray`中的所有元素都是同一种类型,否则转换到`List`时可能会出现问题。 2. **性能考虑**:当处理大量数据时,`HashSet`的去重效率较高,因为它的平均时间复杂度为O(1),但是转换`...
在Java编程环境中,当我们涉及到与JSON数据交互时,经常会用到`JSONArray`类。`JSONArray`是org.json库中的一个核心类,它允许我们创建、读取和操作JSON数组。这个库是由Douglas Crockford开发的,他也是JSON...
《深入解析阿里巴巴Fastjson库:以JSONArray为重点》 在Java世界中,数据序列化与反序列化是一项重要的任务,它涉及到对象与JSON格式之间的转换。阿里巴巴的Fastjson库以其高效、易用的特点,成为了广大开发者青睐...
描述中提到"this class was written without inspecting the non-free org.json sourcecode.",意味着这个JSONArray实现不是基于org.json这个非开源库的源代码。org.json是一个常见的Java JSON库,但其某些版本可能...
在Java编程语言中,`JSONArray`是JSON(JavaScript Object Notation)数据格式的一个关键组成部分,由org.json库提供。JSON是一种轻量级的数据交换格式,它使得人和机器都能容易地读取和写入数据。在这个小实例中,...
boolean exists = jsonArray.isNull(2); // 如果索引不存在,返回true;存在但值为null,也返回true // 删除元素 jsonArray.remove(1); // 删除索引为1的元素 // 替换元素 jsonArray.put(1, "grape"); // 将索引为...
**JSONArray解析包详解** 在Java开发中,JSON作为一种轻量级的数据交换格式,被广泛用于前后端数据传输。为了方便地处理JSON数据,有多个库提供了相应的API,其中包括`org.json`库中的`JSONArray`类。`JSONArray`是...
在Java编程环境中,当我们处理JSON数据时,经常会用到`JSONObject`和`JSONArray`这两个类。它们是来自开源项目json.org的JSON库的一部分,提供了方便的API来操作JSON格式的数据。JSON(JavaScript Object Notation)...
在Java中,处理JSON数据时通常会用到两个主要的库:JSONObject和JSONArray,它们是org.json包下的类。 JSONObject是表示一个JSON对象的类,可以用来创建、读取和修改JSON数据。JSON对象由键值对组成,键总是字符串...
JSONArray jsonArray = new JSONArray(dataList); ``` 2. 添加元素:可以调用`put()`方法向数组中添加JSON对象、基本类型或其他JSON数组。 ```java jsonArray.put(new JSONObject().put("key", "value")); ...
JSONArray jsonArray = JSONArray.fromObject("[\"Apple\", \"Banana\", \"Orange\"]"); System.out.println(jsonArray.getString(1)); // 输出 "Banana" ``` 同样,`JSONObject`提供类似的功能,用于处理JSON对象...
JSONArray需要的jar包,包含以下: json-lib-2.4-jdk15.jar json-lib-2.4.jar ezmorph-1.0.6.jar commons-logging-1.1.1.jar commons-lang-2.6.jar commons-collections-3.2.1.jar commons-beanutils-1.9.2....
然而,对于已有的项目或特定的环境,`json-lib`及其依赖仍然是一个可靠的解决方案。在使用这些库时,确保理解它们的工作原理和限制,以及如何适当地管理依赖关系,对于优化代码和避免运行时错误至关重要。
给出提前排序的数组,jsonArray中字段根据数组顺序重新排序。
包含 json-lib-2.4-jdk15.jar , ezmorph-1.0.6.jar commons-logging-1.2.jar commons-lang-2.5.jar commons-collections-3.2.jar commons-beanutils-1.8.0.jar
这个“JSONArray和Gson的jar”压缩包文件显然包含了一些用于处理JSON与Map对象转换的工具类或库。 首先,我们来详细了解JSONArray。JSONArray是JSON规范中的一个类型,代表一个数组,它可以包含零个或多个JSON值,...
3.JSONArray:fastJson提供json数组对象 --------------------- 作者:superlovelei 来源:CSDN 原文:https://blog.csdn.net/superlover_/article/details/79741075 版权声明:本文为博主原创文章,转载请附上...
在Java编程中,处理JSON数据是一项常见的任务,而`JsonObject`和`JsonArray`是Gson库中的两个核心类,用于解析和构建JSON对象和数组。Gson是Google提供的一个开源库,它允许我们将Java对象转换为JSON字符串,反之...
JSONValue.AddPair(TJSONPair.Create('Items', JSONArray)); // 现在JSONValue包含了一个名为'Items'的键,其值为一个包含所有Item的数组 end; ``` 2. **反序列化(Deserialization)** 反序列化是将JSON字符...