29.1.1 spring mvc auto-configuration
spring boot 自動配置好了springmvc
一下是springboot對springmvc的預設配置:
if you want to take complete control of spring mvc, you can add your own @configuration annotated with @enablewebmvc.
<
mvc:view-controller
path
="/hello"
view-name
="index"
/>
<
mvc:interceptors
>
<
mvc:interceptor
>
<
path
="/hello"
/>
>
bean
>
mvc:interceptor
>
mvc:interceptors
>
編寫乙個配置類(@configuration),是webmvcconfigurer 型別的。不能標註@enablewebmvc註解
//實現webmvcconfigurer 可以來擴充套件springmvc的功能
@configuration
public
class
mymvcconfig
implements
webmvcconfigurer
}
原理:
webmvcautoconfiguration是springmvc的自動配置類
在做其他自動配置時會匯入;@import()
@configuration
public
class
delegatingwebmvcconfiguration
extends
webmvcconfigurationsupport
//}}
}}
容器中所有的webmvcconfigurer都會一起起作用;
我們的配置類也會被呼叫;
效果:springmvc的自動配置和我們的擴充套件配置都會起到作用;
springboot對springmvc的自動配置不需要了,所有的都是由我們自己配置,所有的自動配置都失效;
只需要在配置類中新增@enablewebmvc註解即可。
原理:為什麼新增@enablewebmvc註解,所有的自動配置都失效了;
enablewebmvc的核心
@import
(delegatingwebmvcconfiguration.
class
)public @inte***ce
enablewebmvc
)//容器中沒有這個元件,自動配置類才會生效
@conditionalo****singbean()
@autoconfigureorder(-
2147483638
)@autoconfigureafter()
public
class
webmvcautoconfiguration
{
@enablewebmvc將webmvcconfigurationsupport這個元件匯入進來了
匯入的webmvcconfigurationsupport知識springmvc最基本的功能;
模式:springboot在自動配置很多元件的時候,先看容器中是否有使用者自己配置的元件(@bean,@component)如果有就用使用者配置的,如果沒有,才自動配置;如果有些元件可以有多個(viewresolver)將使用者配置的和預設的組合起來;
在springboot中會有非常多的***configurer幫助我們擴充套件基本配置
springmvc的自動任務
針對springmvc的自動任務我們需要進行相應的配置 第一 要在springmvc.xml中配置 xmlns task spring task 3.2.xsd 配置任務掃瞄 掃瞄任務 這個可以理解為就是我們專案啟動後要掃瞄的controller層service,dao層的包一樣 之後我們需要在需要...
SpringMvc 之自動註解
元素會掃瞄指定的包極其所有子包,並查詢能夠自動註冊為spring bean的類.base package屬性標識了元素所掃瞄的包 base package org.test annotation expression org.springframework.stereotype.service co...
Spring MVC 配置 解剖
分類 spring 2007 11 30 16 40 5438人閱讀收藏 舉報 一,配置分發器 dispatcherservlet 是spring mvc 的入口 所有進入spring web 的 request 都經過 dispatcherservlet 需要在 web.xml 中註冊 dispa...