文章目录
注解配置SpringMVC
本文要介绍用注解方式代替web.xml与SpringMVC的配置文件
一、注解web.xml文件
实现步骤
(1)创建初始化配置类
创建一个初始化配置类,继承AbstractAnnotationConfigDispatcherServletInitializer,重写里面的三个方法。第一个方法getRootConfigClasses获取spring指定的配置类,用来返回spring配置类的一个数组;第二个方法getServletConfigClasses获取springMVC指定的配置类,用来返回springMVC配置类的一个数组;第三个方法getServletMappings指定DispatcherServlet的映射路径,就是设置url-pattern,返回的是url-pattern配置的值。
public class WebInit extends AbstractAnnotationConfigDispatcherServletInitializer {
/**
* 指定spring配置类
* @return
*/
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[]{
SpringConfig.class};
}
/**
* 指定SpringMVC的配置类
* @return
*/
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class[]{
SpringMvcConfig.class};
}
/**
* 指定DispatcherServlet的映射路径
* @return
*/
@Override
protected String[] getServletMappings() {
return new String[]{
"/"};
}
}
web.xml里面还有一些其他的配置:
(2)注册过滤器
我们在SpringMVC前面的学习中用到了两个过滤器,一个是编码过滤器,处理中文乱码问题;还有一个HiddenHttpMethodFilter过滤器,可以处理PUT和DELETE请求。在web.xml中配置如下:
<!-- 编码过滤器-->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-pa