json lib 只转换我要的属性

本文介绍了一个名为JsonHelper的工具类,该类提供了一系列方法来处理和过滤JSON数据。其中包括如何使用自定义过滤条件来排除不需要的字段,以及如何将Java对象转换为JSON格式。这些方法对于那些需要频繁进行JSON数据交互的应用程序尤其有用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


/**
* @author wjc 200-12-7 1:40:31
*
* 类说明:
*/
package com.tools;
import java.util.List;
import java.util.Map;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.util.PropertyFilter;
public class JsonHelper {
private static String[] configFilter = new String[]{"comments","relDocTrees"};
public static JsonConfig getFilter(final String[] s){
JsonConfig config = new JsonConfig();
config.setJsonPropertyFilter(new PropertyFilter(){

public boolean apply(Object source, String name, Object value) {
if(juge(s,name)) {
return true;
} else {
return false;
}
}

public boolean juge(String[] s,String s2){
boolean b = false;
for(String sl : s){
if(s2.equals(sl)){
b=true;
}
}
return b;
}
});
return config;
}
// 转换的时候调用过滤器
/**
* @param entityList
* @param cfg 自定义过滤条件
* @return 对象数组
*/
public static Object getJsonObject(List entityList,String[] cfgFilter){
JsonConfig config=new JsonConfig();
config.setExcludes(cfgFilter);
JSONArray jSONArray =JSONArray.fromObject(entityList,config);
return jSONArray.toArray();
}
/**
* @param entityList
* @param cfg 自定义过滤条件
* @return 对象数组
*/
public static Object getJsonArrayObject(Map entityList,String[] cfgFilter){
JsonConfig config=new JsonConfig();
config.setExcludes(cfgFilter);
JSONArray jSONArray =JSONArray.fromObject(entityList,config);
return jSONArray.toArray();
}
/**
*
* @param entityList
* @return 对象数组
*/
public static Object getJsonArrayObject(List entityList){
JsonConfig config=new JsonConfig();
config.setExcludes(configFilter);
JSONArray jSONArray =JSONArray.fromObject(entityList,config);
return jSONArray.toArray();
}
public static Object getJsonArrayObject(Map entityList){
JsonConfig config=new JsonConfig();
config.setExcludes(configFilter);
// JsonConfig config = getFilter(configFilter);//String数组中存储的是要过滤的属性
JSONArray jSONArray =JSONArray.fromObject(entityList,config);
return jSONArray.toArray();
}
/**
*
* @param jsonStr json对象
* @param entityClass 实体类 xxx.class
* @return Object 对象
*/
public static Object JsonToEntity(String jsonStr,Class entityClass){
JSONObject jsonObject = JSONObject.fromObject( jsonStr );
return JSONObject.toBean(jsonObject, entityClass);
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值