最近項目中用到了spring boot然後,在接口返回的json串中有一些字段首字母是需要大寫的。在聽取同事的說明之後用@JSONField註解在屬性上面可以解決。
但是,無效….
OK,然後瞭解到事實當我們將返回類型設置爲MediaType.APPLICATION_JSON
之後,spring boot 會到利用RequestMappingHandlerAdapter去設置messageConverters,其實這就是springmvc裏面的消息轉換,而且,springboot本來就包含springmvc進去了。
追蹤到源碼我們發現,他序列化json的時候,是使用的jackson的。
也就是說@JSONField不生效不是很正常的嗎?
解決辦法
用jackson支持的改字段名稱方法
//使用JsonProperty註解 @JsonProperty(value = "ErrorCode") private String errorCode;
完美解決問題