1.配置DispatcherServlet
2.在springmvc中配置三大组件
<!-- 注解处理器映射器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
<!-- 注解处理器适配器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
<!-- 视图解析器 解析jsp视图,默认使用jstl,要求classpath下有jstl的jar包 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 视图的前缀 -->
<property name="prefix" value="/WEB-INF/jsp/" />
<!-- 视图的后缀 -->
<property name="suffix" value=".jsp" />
</bean>
3.在spring容器中配置action
使用@Controller ,与此同类型的还有@Service @Responsitory @Component
使用spring容器的组件扫描,自动扫描到action在spring容器中注册。
所以需要在springmvc.xml中配置组件扫描。
<!-- 组件扫描,只扫描action -->
<context:component-scan base-package="com.wanhao.controller"/>
url模版映射,将参数在url中传递。
这样便于网站优化,链接尽量是 xxxx.html 而不是后面跟一大串参数?a=b&c=d&...
请求方法的限定
如限定为get或post方法
@RequestMapping(value="/editItems",method={RequestMethod.POST,RequestMethod.GET})
限定为Post
请求转发:
注意不论是请求转发还是重定向,都记得:若还是转发到本Controller中,则不必写本Controller上的@RequestMapping
错误及错误分析:
1.在使用注解开发的过程中,若是报了一个错误 org.springframework.beans.factory.BeanDefinitionStoreException:解析某个Controller失败,一般都是把环境中JDK与JRE还有加入的jre的jar包不一致导致的。调整到一个版本。若是 不行就把这jdk环境版本调低一点,比如1.7的。
2.注解开发中,一直报404,你十分坚信你的代码正确(比如我检查了至少三四十次代码),依然报404错误,你只需要把 springmvc.xml 中映射器和适配器的配置改为annotation-driven,这两个并不完全相同,目前看来,<mvc:annotation-driven />更为强大。
<!-- 注解处理器映射器
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
-->
<!-- 注解处理器适配器
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
-->
<!-- 配置这个,代替配置映射器和适配器 -->
<mvc:annotation-driven />