Sping Boot返回Json格式自定義


轉載請注明http://www.cnblogs.com/majianming/p/8491020.html

在寫項目過程中,遇到了需要定義返回的json字段格式的問題

例如在實體屬性中,我有一個字段是userName,那么需要在json中出現的樣子是user_name,即采用下划線命名法

那么可以采用@JsonProperty這個注解自定義@JsonProperty("user_name")

但是如果我全部的屬性都要這樣采用下划線命名法,那我一個個加?

其實只要定義jackson的屬性命名策略就可以了 在配置文件中添加

(yml格式)

spring:

  jackson:

    property-naming-strategy: SNAKE_CASE

(propreties格式)

spring.jackson.property-naming-strategy=SNAKE_CASE

就可以了

全部策略有

策略 例子 備注
LOWER_CAMEL_CASE userName 默認策略
KEBAB_CASE user-name  
LOWER_CASE username  
SNAKE_CASE user_name  
UPPER_CAMEL_CASE UserName  

到這里好像沒什么問題了,但是我要是只有一個實體的屬性名需要映射成上面的情況之一,

但是屬性名稱有很多,懶得一個個加呢?

其實也有方法,只要在需要的實體上添加@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)這樣的注解就可以了

這里可以使用的策略也和上面的表格中的一致

以上

 


 

參考

  1. http://www.baeldung.com/jackson-advanced-annotations

  2. https://stackoverflow.com/a/40730352

 

轉載請注明http://www.cnblogs.com/majianming/p/8491020.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM