对象 序列化 json 时 ,排除字段 demo -- gson

其他技术

2018-01-24

38

0

技术:gson2.8.1 + java8

运行环境:IDEA 15.2 + jdk8 + windows 7 + gson2.8.1

demo功能:提供一个gson序列化删除某些字段的功能 demo

实现代码

在生成gson 对象时, 添加排除策略代码

    public static Gson build(final List fieldExclusions, final List<Class<?>> classExclusions, boolean isPretty) {
        GsonBuilder b = new GsonBuilder();
        b.addSerializationExclusionStrategy(new ExclusionStrategy() {
            @Override
            public boolean shouldSkipField(FieldAttributes f) {
                return fieldExclusions == null ? false : fieldExclusions.contains(f.getName());
            }

            @Override
            public boolean shouldSkipClass(Class<?> clazz) {
                return classExclusions == null ? false : classExclusions.contains(clazz);
            }
        });
        if (isPretty) {
            return b.setPrettyPrinting().create();
        }
        return b.create();
    }

测试

下载代码执行 Main.main()

 
 

欢迎添加微信,互相学习↑↑↑ -_-

发表评论

全部评论:0条

白老虎

programming is not only to solve problems, ways to think