@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等)
1560 0
|
21天前
|
存储 Java 数据库连接
@OneToOne注解的作用
@OneToOne注解的作用
|
4月前
|
Java Spring
@GrpcServise 注解的作用和使用
@GrpcServise 注解的作用和使用
46 0
|
5月前
|
Java 编译器 Spring
一文搞懂:什么是注解?
一文搞懂:什么是注解?
30 0
|
6月前
|
ARouter Java
Java注解之编译时注解
Java注解之编译时注解
43 3
|
安全 Java 大数据
一文搞懂什么是“注解”
一文搞懂什么是“注解”
295 0
一文搞懂什么是“注解”
|
安全 Java 编译器
Java注解(一) 注解的属性,格式,说明
Java注解(一) 注解的属性,格式,说明
115 0
|
Java 编译器 API
Java注释和注解的区别
Java注释和注解的区别
156 0
|
Java
java注解(作用于注解)
java注解(作用于注解)
118 0
|
Java Spring 容器