溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Scala 在 Spring Boot 下 MVC 的 jackson 相關(guān)配置

發(fā)布時(shí)間:2020-07-29 16:40:02 來(lái)源:網(wǎng)絡(luò) 閱讀:487 作者:53422245 欄目:編程語(yǔ)言

使用版本:spring boot 1.5.21


問(wèn)題:在scala中配置對(duì)jackson的 `com.fasterxml.jackson.databind.Module` 進(jìn)行配置但是始終無(wú)法將實(shí)體正確的轉(zhuǎn)換。


解決:在spring boot時(shí)不要使用@EnableWebMvc注解。


查詢過(guò)程:通過(guò)不斷調(diào)試初始化的過(guò)程,發(fā)現(xiàn)在實(shí)例化spring boot的自動(dòng)配置類(lèi)之前就對(duì)mvc進(jìn)行初始化。


心得:其實(shí)應(yīng)該多看下官方文檔,簡(jiǎn)單的幾行就能說(shuō)明問(wèn)題,不要相信記憶,因?yàn)橛洃洉?huì)變,重要的是版本也會(huì)變,而且要注意在查看文檔時(shí)要先看spring boot的版本,再看spring framework的文檔。


附帶spring boot部分翻譯:


27.1.1 Spring MVC 自動(dòng)化配置
Spring Boot 對(duì) Spring MVC 提供自動(dòng)化配置,并且在大多數(shù)的應(yīng)用中運(yùn)行良好。


基于Spring默認(rèn)設(shè)置的基礎(chǔ)上增加下列特性:

  • 包括實(shí)例 ContentNegotiatingViewResolver 和 BeanNameViewResolver 。

  • 支持靜態(tài)資源,包括支持WebJars。

  • 自動(dòng)注冊(cè) Converter, GenericConverter, Formatter 的實(shí)例。

  • 支持 HttpMessageConverters。

  • 支持靜態(tài) index.html 。

  • 定制 Favicon 圖片。

  • 自動(dòng)使用 ConfigurableWebBindingInitializer 。


如果你想保持這些特性,并且增加額外的 MVC 配置(攔截器,格式器,視圖控制器,等等),你需要在 自己的 WebMvcConfigurerAdapter 類(lèi)上增加 @Configuration 注解,但是注意不要增加@EnableWebMvc 。如果希望自定義 RequestMappingHandlerMapping,RequestMappingHandlerAdapter 或 ExceptionHandlerExceptionResolver,可以聲明 WebMvcRegistrationsAdapter 實(shí)例來(lái)提供相關(guān)組件。
如果希望對(duì)Spring MVC進(jìn)行完全自主配置,可以在增加 @Configuration 注解的情況下額外再增加 @EnableWebMvc 。


附上scala的在Spring Boot Mvc 下的 jackson 配置

import?com.fasterxml.jackson.databind.Module
import?com.fasterxml.jackson.module.scala.DefaultScalaModule
import?org.springframework.context.annotation.{Bean,?Configuration}

@Configuration
class?WebMvcConfig?{
????
????@Bean
????def?defaultScalaModule():Module?=?{
????????DefaultScalaModule
????}
}





向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI