spring boot处理请求返回值的格式(自定义消息转换器)
生活随笔
收集整理的這篇文章主要介紹了
spring boot处理请求返回值的格式(自定义消息转换器)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
springboot 將對象轉化成json對象返回給前端,是通過多個消息轉換器配合完成的
但是有些時候,默認的轉化格式未必符合我們的要求,這個時候就需要進行自定義消息轉換器
只需要在@Configuration的類中添加消息轉化器的@bean加入到Spring容器,就會在spring啟動時被Spring?Boot自動加入到容器中。
框架在對消息進行轉換時就不會使用默認的轉換器,而是使用咱們提供的bean進行處理
需要注意的是,一個轉換器只有一個bean會起作用,當轉換器重復加到容器中時,只有第一個會起作用
?
@Beanpublic MappingJackson2HttpMessageConverter longToStringConverter() {MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();ObjectMapper mapper = new ObjectMapper();//Long 轉StringSimpleModule simpleModule = new SimpleModule();simpleModule.addSerializer(Long.class, ToStringSerializer.instance);simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);mapper.registerModule(simpleModule);//Date格式mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);mapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")); converter.setObjectMapper(mapper);return converter;}?
這是一個示例, 會將對象中的Long類型轉換成String返回,同時返回規定格式的日期
如果要對返回消息的編碼格式做處理,就需要用到另外一個轉換器
?
如果某個字段不想返回,再對象屬性上面加上@JsonIgnore即可
?
?
除了這種方式,還可以在繼承WebMvcConfigurerAdapter的類中重寫(覆蓋)configureMessageConverters方法,也能實現這種效果
?
轉載于:https://www.cnblogs.com/self-studyRen/p/11133847.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的spring boot处理请求返回值的格式(自定义消息转换器)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java -PDF添加文本水印与图片水印
- 下一篇: ingress controller 和