轉(zhuǎn)自:http://ttaale.javaeye.com/blog/761861 一:配置web.xml 1)問題:spring項(xiàng)目中有多個(gè)配置文件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)可以使用 逗號(hào)分隔 二:controller 1:spring mvc 中將 controller 認(rèn)為是 MVC中的C --控制層 2:規(guī)范命名 類名 xxxController 3:如果不基于注解: 該類需要繼承 CommandController 或者 其他很多 參見 spring幫助 如果基于注解:在類名前 加上 @controller 4:補(bǔ)充:將類名前加上該注解,當(dāng)spring啟動(dòng) 或者web服務(wù)啟動(dòng) spring會(huì)自動(dòng)掃描所有包(當(dāng)然,這個(gè)可以設(shè)置) 作用: 就是告訴服務(wù)器 這個(gè)類是MVC中的C 這個(gè)類可以接收用戶請(qǐng)求 處理用戶請(qǐng)求 三:?jiǎn)栴}:如何接收用戶請(qǐng)求 1:假設(shè)用戶請(qǐng)求URL 是: http://localhost:8080/項(xiàng)目名/xxx.do do不do都一樣 不管這個(gè)do 你用什么都可以 2:這個(gè)時(shí)候,spring開始在所有的 C 中,找對(duì)應(yīng)的處理請(qǐng)求的方法 3:在任意的可以C的類中,在你想要處理此請(qǐng)求的方法定義的前面 @RequestMapping("/xxx") 這個(gè)時(shí)候的xxx 就是用戶請(qǐng)求的xxx 不管do public String 方法名() { return “aaa”; 返回一個(gè)字符串,非常有用 要注意 用來決定要顯示的MVC的 V 視圖層 是哪個(gè) } 四:上面 配置好了 MVC的 C 也就是 控制層 在方法中返回字符串 用來決定MVC的V 視圖層 問題:如何讓spring 去掃描類 建立關(guān)聯(lián) 1:在配置文件中 (spring)的 假設(shè)是 mvc.xml 中 2:加入 <context:component-scan base-package="包路徑"/>
五:?jiǎn)栴} 如何返回到視圖層 V 1: 解決:此時(shí),需要在配置文件中,加入視圖解析器 有很多種 ,太多了 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>
小結(jié):通過上述5步 ,基本完成 C V 的配置 1:spring 中的C 一般起類名 XXXController 在這個(gè)類里面 需要加入@controller 標(biāo)志這個(gè)類可以作為請(qǐng)求處理類 也就是 控制類 2:這個(gè)控制類里面可以有很多方法,哪個(gè)方法用來處理用戶請(qǐng)求,就在那個(gè)方法前面 加 @RequestMapping(“/xxxxx請(qǐng)求路徑”) 3;當(dāng)請(qǐng)求處理完畢后 返回值 決定了 該處理完畢后 用戶將跳轉(zhuǎn)到那個(gè)頁(yè)面 這個(gè)很重要 4:例如 @RequestMapping("/xxx") 這個(gè)時(shí)候的xxx 就是用戶請(qǐng)求的xxx 不管do public String 方法名() { return “aaa”; 返回一個(gè)字符串,非常有用 要注意 用來決定要顯示的MVC的 V 視圖層 是哪個(gè) } 返回 aaa 根據(jù)配置文件中的 視圖處理器配置 加入前綴 后綴 頁(yè)面將跳轉(zhuǎn)到 /WEB-INF/views/aaa.jsp |
聯(lián)系客服