2016-02-04 39 views
1

我有一個實體在春季啓動REST的應用程序,我想爲屬性的名稱從駝峯轉換成蛇案例,我用如下如何使用@JsonProperty轉換Snake Case?

@JsonProperty 
private String createdBy; 

,但我無法得到我所需要的JSON命名爲CREATED_BY ,爲什麼?我必須使用@JsonProperty(「created_by」)嗎?有沒有默認的方法?

+0

我得到了答案補充「spring.jackson.property命名策略= CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES「,如下所示到application.properties – mikezang

回答

3

您可以將您的休息客戶端配置爲SNAKE_CASE(自jackson 2.7)或CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES(對於舊版本)。

如果整個通訊是SNAKE_CASE,此解決方案就可以工作。

如果您的客戶端是CAMEL_CASE並且某些響應是SNAKE_CASE,則需要在您的類上使用@JsonPropery註釋。

使用你的例子應該是:

@JsonProperty("created_by") 
private String createdBy; 

你需要指定蛇的情況下對@JsonPropery註釋「變量」名