@JsonProperty与@JSONField注解用处

简介: @JsonProperty与@JSONField注解用处

目的:都是为了解决json字符串的某些属性名和JavaBean中的属性名匹配不上的问题。


JsonProperty


public class User {
  @JsonProperty("JsonPropertyName")
  private String name;
  private String sex;
  private Integer age;
  //get/setter与tostring正常字段名:name、sex、age
}
@Test
public void testJsonProperty() throws IOException{
    User user=new User("shiyu","man",22);
    System.out.println(new ObjectMapper().writeValueAsString(user));
    String str="{\"sex\":\"man\",\"age\":22,\"JsonPropertyName\":\"shiyu\"}";
    System.out.println(new ObjectMapper().readValue(str,User.class).toString());
}
输出:
{"sex":"man","age":22,"JsonPropertyName":"shiyu"}
User [name=shiyu, sex=man, age=22]

JSONField

public class User {
  @JSONField(name="JSONFieldName")
  private String name;
  private String sex;
  private Integer age;
  //get/setter与tostring正常字段名:name、sex、age
}
@Test
public void testSONField(){
    User user=new User("shiyu","man",22);
    System.out.println(JSON.toJSONString(user));
    String str="{\"JSONFieldName\":\"shiyu\",\"age\":22,\"sex\":\"man\"}";
    System.out.println(JSON.parseObject(str, User.class).toString()); 
}
输出
{"JSONFieldName":"shiyu","age":22,"sex":"man"}
User [name=shiyu, sex=man, age=22]
相关文章
|
Java 微服务 Spring
@EnableDiscoveryClient注解的作用
@EnableDiscoveryClient注解的作用 @EnableDiscoveryClient 及@EnableEurekaClient 类似,都是将一个微服务注册到Eureka Server(或其他 服务发现组件,例如Zookeeper、Consul等)
|
8月前
|
Java 编译器 API
Java注释和注解的区别
Java注释和注解的区别
115 0
|
10月前
|
Java
java注解(作用于注解)
java注解(作用于注解)
84 0
|
10月前
|
Java 编译器 测试技术
手写反射实现读取自定义注解中的属性值
手写反射实现读取自定义注解中的属性值
|
SQL XML Java
MyBatis框架:第七章:注解使用方式和参数传递及#{}和${}
MyBatis框架:第七章:注解使用方式和参数传递及#{}和${}
281 0
|
JSON 前端开发 Java
|
Java 编译器
注解和反射(一)【注解的基础知识和架构】
注解和反射(一)【注解的基础知识和架构】
97 0
注解和反射(一)【注解的基础知识和架构】
|
JavaScript 前端开发 Java
注解与反射笔记
什么是注解 什么是内置注解 元注解 自定义注解 反射 动态语言 V S 静态语言 Java Reflection Java反射机制提供的功能 Java反射优点和缺点 反射相关的主要API Class类
151 0
注解与反射笔记
|
NoSQL Java 程序员
想自己写框架?不会写Java注解可不行
想自己写框架?不会写Java注解可不行
想自己写框架?不会写Java注解可不行