方法一: JsonConfig jsonConfig=new JsonConfig(); config.setJsonPropertyFilter(new PropertyFilter(){ public boolean apply(Object source, String name, Object value) { if(name.equals("familyMemberRoles") || name.equals("familyMemberRels") || name.equals("familyMemberRoles") || name.equals("familyBaseInfos") || name.equals("familyRoleAuthorities") || name.equals("memberIncomes") || name.equals("memberLoanouts") || name.equals("memberOnloans") || name.equals("memberOutlaies") || name.equals("memberRoleRels")) { return true; } else { return false; } } }); FamilyBaseInfo familyBaseInfo = familyBaseInfoDao.findById(familyId); MemberBaseInfo memberBaseInfo = familyBaseInfo.getMemberBaseInfo(); HashMap hashMap = new HashMap(); hashMap.put("familyBaseInfo", familyBaseInfo); hashMap.put("memberBaseInfo", memberBaseInfo); JSONObject jSONObject = JSONObject.fromObject(familyBaseInfo, jsonConfig); return jSONObject.toString(); 方法二: JsonConfig jsonConfig=new JsonConfig(); jsonConfig.setExcludes(new String[]{ "handler", "hibernateLazyInitializer", "familyMemberRoles", "familyMemberRels", "familyMemberRoles", "familyBaseInfos", "familyRoleAuthorities", "memberIncomes","memberLoanouts", "memberOnloans", "memberOutlaies", "memberRoleRels"}); FamilyBaseInfo familyBaseInfo = familyBaseInfoDao.findById(familyId); MemberBaseInfo memberBaseInfo = familyBaseInfo.getMemberBaseInfo(); HashMap hashMap = new HashMap(); hashMap.put("familyBaseInfo", familyBaseInfo); hashMap.put("memberBaseInfo", memberBaseInfo); JSONObject jSONObject = JSONObject.fromObject(familyBaseInfo, jsonConfig); return jSONObject.toString();
相关推荐
- `replacer`(可选):一个函数或者一个数组,用来转换或过滤对象的属性值。如果函数被提供,对于每个对象的属性,都会调用这个函数,其返回值将作为JSON字符串中的属性值。如果是一个数组,只包含数组中的属性名会...
假设我们有两个JSON对象,`obj1`和`obj2`,它们各自包含一个数组属性,如`arr1`和`arr2`: ```json { "obj1": { "arr1": ["元素1", "元素2", "元素3", "元素4"] }, "obj2": { "arr2": ["元素2", "元素4", ...
4. JSON过滤配置: 在将集合转换为JSON时,可能会有一些不必要的数据或属性需要过滤掉。文中提到使用JsonConfig来设置JsonPropertyFilter,这样可以在序列化过程中过滤掉不需要的属性或对象。这是一种更加精细的...
例如,可以定义一个名为`@HiddenField`的注解,用在类的属性上,表示该字段不应出现在序列化后的JSON中。注解的定义如下: ```java import java.lang.annotation.ElementType; import java.lang.annotation....
### JavaScript遍历JSON对象的Key和任意JS对象属性实例 #### 概述 在JavaScript编程中,经常需要遍历对象的属性来进行数据处理或逻辑控制。对于JSON对象(本质上是JavaScript对象的一种)和其他类型的对象,我们...
- `commons-collections-3.2.1.jar`:提供集合操作的扩展,如映射、过滤等,有助于处理JSON中的数组和对象结构。 - `commons-logging-1.1.1.jar`:提供日志接口,用于记录json-lib库在运行过程中的信息和错误。 -...
在转换场景下,它可以帮助处理List中的JavaBean对象,将其属性转换为JSON友好的格式。 6. **commons-logging-1.2.jar**:Apache Commons Logging是一个日志抽象层,允许开发者在不修改代码的情况下更换底层的日志...
在这个上下文中,它可能为处理JSON数据提供了一些辅助功能,比如遍历、过滤或转换JSON对象。 2. **commons-lang-2.3.jar**:Apache Commons Lang是另一个Apache项目,包含了一些Java语言工具类,如字符串操作、日期...
包含各种对象转换成json对象,还包含把对象中的属性转成hashmap 并且可以过滤为空的或者为null的对象
这个数组的每个元素都是一个对象,包含`name`(字段名)和`value`(字段值)两个属性。 **3. 使用示例** 假设有一个简单的HTML表单: ```html 张三" /> ...
例如,`SELECT data.name FROM json` 会返回JSON对象中名为"data"的属性的"name"子属性。 2. **FROM**: 定义JSON数据源。如 `FROM json` 指示JsonSQL从名为"json"的JSON文件或数据中读取。 3. **WHERE**: 过滤数据...
上述代码只会保留对象中的'name'属性,且生成的JSON字符串会使用2个空格进行缩进。 4. **处理日期** JSON不支持Date类型,因此我们需要手动处理。我们可以将其转换为字符串,如ISO格式。 ```javascript let ...
2. 可选的replacer函数,用于过滤或转换对象的属性值。 3. 可选的空格数量,用于格式化输出的JSON字符串。 例如,如果我们有一个简单的JavaScript对象: ```javascript let obj = {name: "John", age: 30}; ``` ...
4. **返回JSON数据**:在Action的方法执行完毕后,由于配置了`json`结果类型,Struts2会自动将Action的属性转换为JSON格式并返回给客户端。如果需要自定义JSON输出,可以通过`@ResultType`注解指定特定的JSON结果...
如果需要在转换过程中过滤某些属性,可以传递一个替换函数: ```javascript let jsonString = JSON.stringify(obj, function(key, value) { if (key === 'age') return undefined; return value; }); console.log...
6. **获取对象属性**:`$..author`返回所有层级中`author`属性的值。 7. **获取数组内所有属性**:`$..*`将返回所有对象的所有属性值。 8. **操作JSON数据**:除了查询,`json-path`库还允许对JSON数据进行修改,...
然而,有时我们可能需要对数据进行一些处理后再转换,例如过滤或修改某些属性。这时可以提供第二个参数,一个替换函数,该函数会在每个值被序列化之前被调用: ```javascript let jsonString = JSON.stringify...
在JSON对象中,属性以键值对形式存在。 4. **关系(Relationships)**:资源之间可能存在关系,如区县与景点之间的包含关系。JSONAPI通过`relationships`字段来表示这些关联。 5. **嵌套数据(Nested Data)**:...
8. **LINQ to JSON**: Json.NET提供了类似LINQ的查询方式来操作JSON数据,可以使用LINQ表达式方便地查找、过滤和修改JSON数据。 9. **JsonConstructorAttribute**: 可以用此特性标记一个构造函数,使Json.NET在反...
转换函数允许在序列化前对对象的属性进行处理,例如加密敏感数据或过滤某些属性。 5. **反序列化**:相反的过程称为反序列化,即把JSON字符串转换回对象。在JavaScript中,我们可以使用`JSON.parse()`方法来完成这...