Sam's Notes | Sam Blog

梦想还是要有的,万一实现了呢

0%

Spring MVC(二) 配置

Spring MVC 的配置 Configuring Spring MVC

* 开启Spring MVC默认配置

Java Config: 加入 @EnableWebMvc 到 某个有 @Configuration 注解的类头。

1
2
3
4
5
@Configuration
@EnableWebMvc
public class WebConfig {

}

XML方式: 增加mvc:annotation-driven 到 DispatcherServlet 的context里面。

1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">

<mvc:annotation-driven />

</beans>

* 自定义Spring MVC配置

Java Config: 加入 @EnableWebMvc 到 某个有 @Configuration 注解的类头。自己实现 WebMvcConfigurer, 更多是继承 WebMvcConfigurerAdapter并重写你自己需要的方法。

1
2
3
4
5
6
7
@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

// Override configuration methods...

}

XML方式: 增加mvc:annotation-driven 到 DispatcherServlet 的context里面。设置自己需要Spring MVC XML schema里面的元素值。

* 高级自定义Spring MVC配置

Java Config: 去掉 @EnableWebMvc@Configuration 注解类头,自己实现 WebMvcConfigurationSupport., 更多是继承 DelegatingWebMvcConfiguration并重写你自己需要的方法。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Configuration
public class WebConfig extends DelegatingWebMvcConfiguration {

@Override
public void addInterceptors(InterceptorRegistry registry){
// ...
}

@Override
@Bean
public RequestMappingHandlerAdapter requestMappingHandlerAdapter() {
// Create or let "super" create the adapter
// Then customize one of its properties
}

}

具体内容看头部的官方文档