Spring3 MVC 註解(一)---註解基本配置及@controller和 @RequestMapping 常用解釋(轉)
一:配置web.xml
1)問題:spring項目中有多個配置文件mvc.xml dao.xml
2)解決:在web.xml中
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/xxx/*.xml</param-value>
xxx表示xml文件路徑 *.xml表示後綴名為xml的任意文件
</init-param>
3)可以使用 逗號分隔
二:controller
1:spring mvc 中將 controller 認為是 MVC中的C --控制層
2:規範命名 類名 xxxController
3:如果不基於註解: 該類需要繼承 CommandController 或者 其他很多 參見 spring幫助
如果基於註解:在類名前 加上 @controller
4:補充:將類名前加上該註解,當spring啟動 或者web服務啟動 spring會自動掃描所有包(當然,這個可以設置)
作用: 就是告訴服務器 這個類是MVC中的C 這個類可以接收用戶請求 處理用戶請求
三:問題:如何接收用戶請求
1:假設用戶請求URL 是: http://localhost:8080/項目名/xxx.do do不do都一樣 不管這個do 你用什麽都可以
2:這個時候,spring開始在所有的 C 中,找對應的處理請求的方法
3:在任意的可以C的類中,在你想要處理此請求的方法定義的前面
@RequestMapping("/xxx") 這個時候的xxx 就是用戶請求的xxx 不管do
public String 方法名()
{
return “aaa”;
返回一個字符串,非常有用 要註意 用來決定要顯示的MVC的 V 視圖層 是哪個
}
四:上面 配置好了 MVC的 C 也就是 控制層 在方法中返回字符串 用來決定MVC的V 視圖層
問題:如何讓spring 去掃描類 建立關聯
1:在配置文件中 (spring)的 假設是 mvc.xml 中
2:加入 <context:component-scan base-package="包路徑"/>
五:問題 如何返回到視圖層 V
1: 解決:此時,需要在配置文件中,加入視圖解析器 有很多種 ,太多了
2:這裏用基於jsp/jstl 視圖
3:在web.xml 中加入bean 配置
<bean class="org.s...f....web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views"/> 前綴
<property name="suffix" value=".jsp"/> 後綴
</bean>
小結:通過上述5步 ,基本完成 C V 的配置
1:spring 中的C 一般起類名 XXXController 在這個類裏面 需要加入@controller 標誌這個類可以作為請求處理類 也就是 控制類
2:這個控制類裏面可以有很多方法,哪個方法用來處理用戶請求,就在那個方法前面 加 @RequestMapping(“/xxxxx請求路徑”)
3;當請求處理完畢後 返回值 決定了 該處理完畢後 用戶將跳轉到那個頁面 這個很重要
4:例如
@RequestMapping("/xxx") 這個時候的xxx 就是用戶請求的xxx 不管do
public String 方法名()
{
return “aaa”;
返回一個字符串,非常有用 要註意 用來決定要顯示的MVC的 V 視圖層 是哪個
}
返回 aaa 根據配置文件中的 視圖處理器配置 加入前綴 後綴
頁面將跳轉到 /WEB-INF/views/aaa.jsp
Spring3 MVC 註解(一)---註解基本配置及@controller和 @RequestMapping 常用解釋(轉)