Gson 过滤字段的几种方法
2015-02-11 23:49
204 查看
gson 大家基本上都用过吧,没用过的话,建议你赶紧使用,因为使用起来太方便了,只需要一句话就能把一个类打包成 json 数据,同样也只需要一句代码就能把 json 数据转化成一个对象。当然今天讲的不是如何转化对象和解析 json 数据,而是我们在打包或解析数据的时候,往往有些字段我们不需要,所以这就需要过滤;这里总结了一下集中方法,
方法一 ;
在对象中把字段用@Expose 注解,这样其他没有用此注解的字段通通都会过滤掉,当然还有一步关键的要实现,就是我们在实例化 Gson 的时候不能简单的new Gson() 了,而是需要用到
new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create() ; 来创建
方法二 ;
直接用 构造方法
方法三;
通过指定声明的权限来过滤,这里过滤掉声明为 protcted 的变量;
以上方法是 Gson 中使用到的,掌握了这几个基本上 Gson 的打包和解析 过滤字段问题就不是什么问题了;
方法一 ;
在对象中把字段用@Expose 注解,这样其他没有用此注解的字段通通都会过滤掉,当然还有一步关键的要实现,就是我们在实例化 Gson 的时候不能简单的new Gson() 了,而是需要用到
new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create() ; 来创建
方法二 ;
直接用 构造方法
mGson = new GsonBuilder().setExclusionStrategies(new ExclusionStrategy() { @Override public boolean shouldSkipField(FieldAttributes f) { //过滤掉字段名包含"id","address"的字段 return f.getName().contains("id")|f.getName().contains("address"); } @Override public boolean shouldSkipClass(Class<?> clazz) { //过滤掉 类名包含 Bean的类 return clazz.getName().contains("Bean"); } }).create();
方法三;
通过指定声明的权限来过滤,这里过滤掉声明为 protcted 的变量;
mGson = new GsonBuilder().excludeFieldsWithModifiers(Modifier.PROTECTED).create() ;
以上方法是 Gson 中使用到的,掌握了这几个基本上 Gson 的打包和解析 过滤字段问题就不是什么问题了;
相关文章推荐
- Gson 过滤字段的几种方法
- Gson 过滤字段的几种方法
- Oracle字段转字符串/多行记录合并/连接/聚合字符串的几种方法
- 几种获取oracle用户表字段信息的方法
- Spring MVC中使用jackson的MixInAnnotations方法动态过滤JSON字段
- java读取clob字段的几种方法
- 几种过滤html代码的方法总结
- 一种过滤字段里电话号码的方法
- 几种在shell命令行中过滤adb logcat输出的方法
- 数据列表过滤重复值几种方法的性能比较
- hibernate 中更新某些字段的几种update方法
- Oracle字段转字符串/多行记录合并/连接/聚合字符串的几种方法
- 通过URL传绑定字段参数的几种方法
- .net C# 过滤HTML标签的几种方法 精华整理哦
- EASBOS根据id获取对象方法来进行过滤字段
- Hibernate更新某些字段的几种update方法
- ASP.NET过滤重复字符与字符串数组去掉重复字符串几种方法
- 常见几种数据库中自增字段的设置方法(转)
- 过滤重复字段的方法
- 织梦CMS采集时keywords字段无法添加过滤规则的解决方法