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