1. 程式人生 > >json中註解@JsonProperty用法

json中註解@JsonProperty用法

jackson的maven依賴

 
  1. <dependency>

  2. <groupId>com.fasterxml.jackson.core</groupId>

  3. <artifactId>jackson-databind</artifactId>

  4. <version>2.5.3</version>

  5. </dependency>

@JsonProperty 此註解用於屬性上,作用是把該屬性的名稱序列化為另外一個名稱,如把trueName屬性序列化為name,@JsonProperty("name")。

 
  1. import com.fasterxml.jackson.annotation.JsonProperty;

  2.  
  3. public class Student {

  4.  
  5. @JsonProperty("name")

  6. private String trueName;

  7.  
  8. public String getTrueName() {

  9. return trueName;

  10. }

  11.  
  12. public void setTrueName(String trueName) {

  13. this.trueName = trueName;

  14. }

  15. }

測試一下

 
  1. import com.fasterxml.jackson.core.JsonProcessingException;

  2. import com.fasterxml.jackson.databind.ObjectMapper;

  3.  
  4. public class Main {

  5. public static void main(String[] args) throws JsonProcessingException {

  6. Student student = new Student();

  7. student.setTrueName("張三");

  8. System.out.println(new ObjectMapper().writeValueAsString(student));

  9. }

  10. }

得到結果

{"name":"張三"} 

這裡需要注意的是將物件轉換成json字串使用的方法是fasterxml.jackson提供的!!

@JsonProperty不僅僅是在序列化的時候有用,反序列化的時候也有用,比如有些介面返回的是json字串,命名又不是標準的駝峰形式,在對映成物件的時候,將類的屬性上加上@JsonProperty註解,
裡面寫上返回的json串對應的名字

--------------------- 本文來自 美好的未來在於把握今天 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/liliang_11676/article/details/80210065?utm_source=copy