真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

初學(xué)者對(duì)SpringMVC的認(rèn)識(shí)-創(chuàng)新互聯(lián)

首先是要一定說明的是,這倒是說明是什么?對(duì)吧Spring MVC 是SpringFrameWork的后續(xù)產(chǎn)品,并且已經(jīng)融

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的從江網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

入到Spring Web Flow中同時(shí)Spring MVC 分離了控制器,模型對(duì)象,分派器(其實(shí)我不知道這是什么)以及處理程

序?qū)ο蟮慕巧?這種分離讓它們更容易進(jìn)行定制.說了這些很官方的話,我都有點(diǎn)暈了,呵呵,先上一個(gè)原理流程圖吧,相信會(huì)比較直觀!

Spring MVC 原理圖

初學(xué)者對(duì)Spring MVC的認(rèn)識(shí)

Spring MVC 對(duì)應(yīng)原理流程步驟:

1.Web客戶端 --> DispatcherServlet 用戶發(fā)送一個(gè)請(qǐng)求到,首先到DispatcherServlet中(先交給前端控制器,進(jìn)行全局的流程控制)

2.DispatcherServlet --> HandlerMapping 解析用戶在前臺(tái)提交的請(qǐng)求,并按照我們的要求分配到指定的Controller(相當(dāng)于struts2中的action)

3.DispatcherServlet --> Controller 進(jìn)入指定的Controller對(duì)象,執(zhí)行里面的方法,返回需要的字符串(ModelAndView),在Controller里面需要對(duì)bean進(jìn)行操作,也就是會(huì)和Model進(jìn)行交互

4.DispatcherServlet --> ViewResolver 解析從Controller中返回的字符串,并轉(zhuǎn)換為有效的JSP路徑

5.DispatcherServlet --> JSP 將轉(zhuǎn)換好的JSP路徑,指定到特定的頁(yè)面

6.JSP --> Web客戶端 將某一個(gè)特定的頁(yè)面顯示在客戶端界面

好了,以上就是Spring MVC的流程,是不是有了一定的認(rèn)識(shí)了,不急,后面還有呢...

有了基本的認(rèn)識(shí), 那就開始編碼吧!(我是用的是Springframework-3.2.8)

大家都知道的,打開編譯器,準(zhǔn)備開始開發(fā)一個(gè)項(xiàng)目的時(shí)候,第一步就是新建項(xiàng)目。哈哈!

是不是會(huì)有一點(diǎn)無(wú)語(yǔ),呵呵,不是別的,只是活躍一下氣氛,原因你懂的。。

好吧,這一步就不列入編碼步驟里了吧,下面正式開始!

第一步:添加架包

初學(xué)者對(duì)Spring MVC的認(rèn)識(shí)

是不是覺得架包很少啊,沒錯(cuò),這就是Spring MVC的特點(diǎn),繼續(xù)讓它顛覆你的想法吧

第二步:一定是web.xml文件了

初學(xué)者對(duì)Spring MVC的認(rèn)識(shí)

這里就是上面提到的DispatcherServlet -- 前端控制器

后面的"*.do"就是用來(lái)攔截頁(yè)面用戶的請(qǐng)求,這里規(guī)定凡是以 .do 結(jié)尾的請(qǐng)求都會(huì)命中,當(dāng)然這個(gè)可以自己定義,需要說明的是,不管自己定義的是什么,一定要遵守,呵呵,是不是突然覺得好有道理!

第三步:在WEB-INF中配置 mvc-servlet.xml文件(要求名稱必須以Web.xml中的節(jié)點(diǎn)中的名字開頭+servlet.xml)算了,直接上圖吧:

Java代碼

<?xml version="1.0"encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:p="http://www.springframework.org/schema/p"

xmlns:context="http://www.springframework.org/schema/context"

xmlns:mvc="http://www.springframework.org/schema/mvc"

xsi:schemaLocation="

http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-3.2.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-3.2.xsd

http://www.springframework.org/schema/mvc

http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd

">

class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">

user

value="org.springframework.web.servlet.view.JstlView">

需要解釋:如果某一個(gè)Controller中需要調(diào)用不用的方法時(shí),就必須指定定義方法的名字,例如請(qǐng)求的路徑為: user.do?action=userLogin(1).需要指定定義方法的名字: 定義之后,程序就知道在action之后的就是需要進(jìn)入的某一個(gè)方法

(如果是調(diào)用同一個(gè)方法,當(dāng)然就不需要定義這個(gè),但是只要有一個(gè)Controller需要不同的方法,就需要定義)

(2).解析之后Controller路徑,這里用到了Spring的控制反轉(zhuǎn)(IOC),其他就不同多說

給Controller定義方法名解析器 2.1. 可以應(yīng)用已經(jīng)定義好的解析器(見上)

2.2. 可以為每一個(gè)Bean單獨(dú)定義解析器

初學(xué)者對(duì)Spring MVC的認(rèn)識(shí)

(3).解析所有來(lái)自頁(yè)面中命中的請(qǐng)求,并分配到不同的Controller中

(4).在配置文件中,如果使用最后一個(gè)bean里面的內(nèi)容,如果需要返回到"index.jsp"頁(yè)面時(shí),就可以直接返回"index"就OK了,這個(gè)配置文件就是為我們返回的字符串,前后自動(dòng)加上"/"和".jsp".

一旦有了這個(gè)配置之后,就不能在Controller中進(jìn)行對(duì)Controller的跳轉(zhuǎn),因?yàn)樗鼤?huì)所有的返回字符串前后都加上"/"和".jsp",而這明顯不是我們所需要的,所以一般不會(huì)使用這種方法!

到這里了,需要靜一靜,好好理一下思路.

第四步:定義一個(gè)UserController,并繼承MultiactionController類

Java代碼

publicclassUserControllerextendsMultiActionController {

publicModelAndView login(HttpServletRequest req,

HttpServletResponse resp, User user) throwsException{

String result = "";

if(user.getName().equals("jack")){

req.getSession().setAttribute("user", user);

result = "login.do?action=login";//可進(jìn)行Controller之間的跳轉(zhuǎn)

result = "index.jsp?age=22";//可傳值到頁(yè)面上

}else{

result = "login.jsp";

}

returnnewModelAndView(result);

}

}

(1).上面的代碼中繼承的是 MultiactionController類,意味著可以用來(lái)定義多個(gè)不同的方法,以請(qǐng)求中action后面的名字來(lái)定

當(dāng)然還可以直接完成Controller接口,意味著當(dāng)前整個(gè)Controller 中,只有一個(gè)方法,且必須給定

(2).在方法中的參數(shù)默認(rèn)情況下是兩個(gè),分別是HttpServletRequset和HttpServletResponse對(duì)象,當(dāng)然在此之外,還可以定義一個(gè)對(duì)象類型的參數(shù),主要是簡(jiǎn)化表單提交多個(gè)參數(shù)(目前只了解到這里)寫到這里,就差不多了,不出意外的話,你應(yīng)該可以完成一個(gè)比較簡(jiǎn)單的Spring MVC框架的小項(xiàng)目了

源碼地址來(lái)源:×××/technology

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


分享題目:初學(xué)者對(duì)SpringMVC的認(rèn)識(shí)-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://weahome.cn/article/ddjccc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部