web.xml
配置前端控制器
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:SpringMCV-config.xml</param-value>
</init-param>
<!--
当值为0或者大于0时,表示容器在应用启动时就加载这个servlet;
当是一个负数时或者没有指定时,则指示容器在该servlet被选择时才加载。
-->
<load-on-startup>1</load-on-startup>
</servlet>
RESTFul风格需要配置过滤器:
配置org.springframework.web.filter.HiddenHttpMethodFilter,实现POST转换为PUT、DELETE
<filter>
<filter-name>HiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HiddenHttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
SpringMVC-config.xml
配置需要自动扫描的包
<context:component-scan base-package="cn.kgc.springmvc"/>
配置视图解析器
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
静态资源:转交给默认的Servlet来响应静态文件,否则报404找不到资源错误
<mvc:default-servlet-handler/>
配置注解驱动:
<mvc:annotation-driven></mvc:annotation-driven>
<mvc:annotation-driven /> 是一种简写形式.
完全可以手动配置替代这种简写形式,简写形式可以让初学都快速应用默认配置方案。
<mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter 两个bean,是spring MVC为@Controllers分发请求所必须的。
并提供了:数据绑定支持,
@NumberFormatannotation支持,
@DateTimeFormat支持,
@Valid支持,读写XML的支持(JAXB),
读写JSON的支持(Jackson)。
常用注解
@Controller
类上
扩展
Ant风格url
//一个问号代表一个占位符
@RequestMapping(value="/testAntStyle??",method=RequestMethod.GET)
//表示同级目录下匹配多个字母
@RequestMapping(value="/testAntStyle*",method=RequestMethod.GET)
//表示多层目录下的匹配的字符
@RequestMapping(value="/testAntStyle*/*",method=RequestMethod.GET)