@EnableWebMvc介紹和使用詳細demo(最新推薦)
@EnableWebMvc介紹和使用詳細demo
@EnableWebMvc是什么
@EnableWebMvc 是 Spring MVC 中的一個注解,它用于啟用 Spring MVC 框架的基本功能,以便你可以使用 Spring MVC 提供的特性來處理 Web 請求。
通常情況下,在基于 Spring Boot 的應(yīng)用中,并不需要顯式地使用 @EnableWebMvc,因為 Spring Boot 已經(jīng)默認自動配置了 Spring MVC。但是,如果你想要自定義 Spring MVC 的配置,或者禁用 Spring Boot 對 Spring MVC 的自動配置,那么你就需要顯式地使用 @EnableWebMvc。
使用示例
下面是一個簡單的使用 @EnableWebMvc 的示例:
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
@EnableWebMvc
public class WebMvcConfig implements WebMvcConfigurer {
// 配置靜態(tài)資源處理
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
// 配置視圖解析器
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
registry.jsp("/WEB-INF/views/", ".jsp");
}
// 其他自定義的 Spring MVC 配置
}在上面的示例中,@EnableWebMvc 注解被添加到了一個 @Configuration 注解的類上,表示要啟用 Spring MVC 框架。在這個類中,你可以添加自定義的 Spring MVC 配置,例如添加攔截器、視圖解析器、消息轉(zhuǎn)換器等。
需要注意的是,使用 @EnableWebMvc 會完全覆蓋 Spring Boot 對 Spring MVC 的自動配置,因此如果你使用了 @EnableWebMvc,就需要自己配置 Spring MVC 的全部內(nèi)容,包括視圖解析器、資源處理、異常處理等。通常情況下,只有在需要非常精細的控制 Spring MVC 配置時才會使用 @EnableWebMvc。
總結(jié):
使用@EnableWebMvc注解,可以開啟Spring MVC 框架的基本功能,你可以使用 Spring MVC 提供的特性來處理 Web 請求,同時會完全覆蓋 Spring Boot 對 Spring MVC 的自動默認配置。
補充:
什么是spring.factories文件,它的作用是什么
spring.factories是什么
spring.factories是 Spring Framework中一個重要的配置文件,主要用于自動化組件裝配和加載。它是 Spring Boot自動配置的核心組成部分,允許將不同的自動配置類和后處理器集中在一起,便于 Spring Boot 在運行時自動進行組件裝配。此外,這個文件可以通過手動編寫或由 Spring Boot 應(yīng)用自動生成的方式來擴展應(yīng)用配置。
在 Spring 框架中,spring.factories 文件作為 Spring 的 Service Provider Interface(SPI)機制的一部分,用于提供接口實現(xiàn)類的元數(shù)據(jù)信息。當(dāng) Spring 啟動時,它會讀取 META-INF/spring.factories 目錄下的文件,從中獲取包含多個 bean 定義的鍵值對列表,然后根據(jù)這些定義實例化相應(yīng)的對象。
文件格式
spring.factories文件采用鍵值對的形式,鍵是自動配置類的全限定名,值是該自動配置類所對應(yīng)的配置類的全限定名。例如:
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration=org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration
工作原理
Spring Boot啟動時,它會掃描classpath下所有的spring.factories文件,加載其中的自動配置類,并將它們注入到Spring ApplicationContext中,使得項目能夠自動運行。
使用場景
自動配置第三方庫:SpringBoot本身并沒有提供對所有第三方庫的自動配置,我們可以通過spring.factories文件來實現(xiàn)對第三方庫的自動配置。
自定義自動配置:我們可以通過spring.factories文件來實現(xiàn)自定義的自動配置,以滿足項目的特殊需求。
總結(jié)
spring.factories文件是Spring Boot項目中的一個重要配置文件,它可以用于自動配置第三方庫和自定義自動配置。通過使用spring.factories文件,我們可以簡化項目的配置,提高項目的開發(fā)效率。
到此這篇關(guān)于@EnableWebMvc介紹和使用詳細demo的文章就介紹到這了,更多相關(guān)@EnableWebMvc使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java Swing組件文件選擇器JFileChooser簡單用法示例
這篇文章主要介紹了Java Swing組件文件選擇器JFileChooser簡單用法,結(jié)合實例形式分析了Swing組件中的文件選擇器JFileChooser的簡單使用方法,需要的朋友可以參考下2017-11-11
java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實現(xiàn)方式
這篇文章主要介紹了java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
Hadoop運行時遇到j(luò)ava.io.FileNotFoundException錯誤的解決方法
今天給大家?guī)淼氖顷P(guān)于Java的相關(guān)知識,文章圍繞著Hadoop運行時遇到j(luò)ava.io.FileNotFoundException錯誤展開,文中有非常詳細的解決方法,需要的朋友可以參考下2021-06-06
springboot2啟動時執(zhí)行,初始化(或定時任務(wù))servletContext問題
這篇文章主要介紹了springboot2啟動時執(zhí)行,初始化(或定時任務(wù))servletContext問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01
SpringBoot2開發(fā)從0開始Spring?Initailizr初始化
這篇文章主要為大家介紹了SpringBoot2從0開始lombok、devtools、Spring?Initailizr的開發(fā)技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05
idea 創(chuàng)建properties配置文件的步驟
這篇文章主要介紹了idea 創(chuàng)建properties配置文件的步驟,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01

