1. 程式人生 > >Spring3 MVC 註解(一)---註解基本配置及@controller和 @RequestMapping 常用解釋(轉)

Spring3 MVC 註解(一)---註解基本配置及@controller和 @RequestMapping 常用解釋(轉)

nal context pac 配置 註解 com inf 如何 文件中

一:配置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 常用解釋(轉)