Gson实现JSON字段过滤

依赖jar:

<properties>
    <gson.version>2.3.1</gson.version>
</properties>
<dependencies>
    <dependency>
	<groupId>com.google.code.gson</groupId>
	<artifactId>gson</artifactId>
	<version>${gson.version}</version>
    </dependency>
</dependencies>

实现代码:

import com.google.gson.ExclusionStrategy;
import com.google.gson.FieldAttributes;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class JsonRenderer {
	
	/**
	 * 将 Bean 转换为 JSON
	 * @author 
	 * @param Bean 实体
	 * @param 需要转换的字段
	 * @return JSON 字符串
	 */
	public static String toJson(Object bean, final String [] filter){
		GsonBuilder gsonBuilder = new GsonBuilder();
		gsonBuilder.setExclusionStrategies(new ExclusionStrategy() {
			public boolean shouldSkipClass(Class<?> clazz) {
				return false;
			}
			public boolean shouldSkipField(FieldAttributes f) {
				for (final String v : filter) {
					if(f.getName().equals(v))
						return false;
				}
				return true;
			}
		});
		gsonBuilder.setDateFormat("yyyy-MM-dd HH:mm:ss");
		Gson gson = gsonBuilder.create();
		
		return gson.toJson(bean);
	}
}

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值