Gson注解和GsonBuilder
程序员文章站
2022-04-04 12:30:10
...
//注意这里的Gson的构建方式为GsonBuilder,区别于test1中的Gson gson = new Gson(); Gson gson = new GsonBuilder() .excludeFieldsWithoutExposeAnnotation() //不导出实体中没有用@Expose注解的属性 .enableComplexMapKeySerialization() //支持Map的key为复杂对象的形式 .serializeNulls().setDateFormat("yyyy-MM-dd HH:mm:ss:SSS")//时间转化为特定格式 .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)//会把字段首字母大写,注:对于实体上使用了@SerializedName注解的不会生效. .setPrettyPrinting() //对json结果格式化. .setVersion(1.0) //有的字段不是一开始就有的,会随着版本的升级添加进来,那么在进行序列化和返序列化的时候就会根据版本号来选择是否要序列化. //@Since(版本号)能完美地实现这个功能.还的字段可能,随着版本的升级而删除,那么 //@Until(版本号)也能实现这个功能,GsonBuilder.setVersion(double)方法需要调用. .create();
推荐阅读
-
品Spring:对@Autowired和@Value注解的处理方法
-
利用递归,反射,注解等,手写Spring Ioc和Di 底层(分分钟喷倒面试官)了解一下
-
浅谈Spring中@Import注解的作用和使用
-
MyBatis中XML和注解的对比及使用
-
List/Map 导出到表格(使用注解和反射)
-
Mybatis注解和配置文件命名规范所引发的问题
-
Java通过注解和反射 实现模拟 Hibernate Validator验证框架对实体对象的字段验证功能
-
一起学Spring之注解和Schema方式实现AOP
-
Spring框架中 @Autowired 和 @Resource 注解的区别
-
@Autowired 和 @Resource注解, 一个接口有多个实现类的时候Spring注入遇到的问题