SpringMVC也叫Spring Web mvc,属于表现层的框架。Spring MVC是Spring框架的一部分,是在Spring3.0后发布的。
SpringMVC 的请求流程图
Springmvc的配置步骤
1.在web.xml中配置前端控制器
2. 处理器映射器(HandlerMapping)
3.处理器适配器(HandlerAdaptor)
4.处理器
5.视图解析器
其中第一个和第四个是需要程序员手工定制的。
注册中央调度器
定制处理器
页面搭建
springmvc.xml配置
<bean id="/happy.do" class="cn.happy.action.MyController"></bean>
效果图
关于urlpattern说法
最后配成*.do
不能配成/* 无法访问*.jsp等动态资源
最好也不要配成/ 无法访问静态资源
不能不配成/
一切源于Restful编程 rest
不能配置为/*
DispatcherServlet会将向动态页面请求,即向jsp页面的跳转请求也当做是一个普通的Controller请求。中央调度器会调用处理器映射器为其查找相应的处理器。当然是找不到的。jsp页面会报404错误
结论:/*会拦截动态资源
不能不配成/
静态资源的解决;
方案一:使用tomcat默认的servlet解决
方案二:使用mvc的default-servlet-handler
会将对静态资源的访问请求通过HandlerMapping映射到默认Servlet请求处理器DefaultServletRequestHandler对象。而该处理器调用了Tomcat的DefaultServlet来处理静态资源的访问请求。当然需要引入mvc约束
<mvc:default-servlet-handler/>
在Spring3.0.4之后,Spring定义了专门用于处理静态资源请求的处理器ResourceHttpRequestHandler。并且添加了<mvc:resources/>标签,专门用于解决静态资源无法访问问题。
<mvc:resource location="/images/" mapping="/images/**"></mvc:resource>
localtion:静态资源所在目录
mapping:对资源的请求
Tomcat注意使用tomcat7