摘要:的開(kāi)發(fā)流程在文件中定義核心攔截用戶請(qǐng)求。的最大作用是配置和請(qǐng)求之間的對(duì)應(yīng)關(guān)系,并配置邏輯視圖名和物理視圖資源之間的相對(duì)關(guān)系,即返回結(jié)果和文件的物理位置的關(guān)系。實(shí)現(xiàn)為了使開(kāi)發(fā)的更規(guī)范,提供了一個(gè)接口,定義了的處理應(yīng)該實(shí)現(xiàn)的規(guī)范。
1.struts2的開(kāi)發(fā)流程
在web.xml文件中定義核心Filter攔截用戶請(qǐng)求。
struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*
通過(guò)post或get提交請(qǐng)求。
定義處理用戶請(qǐng)求的Action類(lèi)。
在MVC框架中,控制器C實(shí)際上是由攔截所有用戶請(qǐng)求,處理請(qǐng)求的通用代碼兩個(gè)部分共同組成的,實(shí)際的業(yè)務(wù)邏輯則由Action來(lái)處理。
MVC框架的底層機(jī)制:
核心Servlet或Filter接收到用戶的請(qǐng)求后,通常會(huì)對(duì)用戶請(qǐng)求進(jìn)行簡(jiǎn)單處理,例如解析、封裝參數(shù)等,然后通過(guò)反射來(lái)創(chuàng)建Action實(shí)例,并通過(guò)調(diào)用Action的制定方法來(lái)處理用戶請(qǐng)求。
配置Action。
配置處理結(jié)果和物理視圖的映射關(guān)系。
編寫(xiě)視圖資源。
2. struts2配置文件struts2的默認(rèn)配置文件為struts.xml,該文件應(yīng)放在web應(yīng)用的類(lèi)加載路徑下,通常在WEB-INF/classes路徑下。struts.xml的最大作用是配置Action和請(qǐng)求之間的對(duì)應(yīng)關(guān)系,并配置邏輯視圖名和物理視圖資源之間的相對(duì)關(guān)系,即返回結(jié)果和jsp文件的物理位置的關(guān)系。
struts2配置常量共有三種方式:
通過(guò)struts.properites文件
通過(guò)struts.xml配置文件(推薦在此文件定義struts屬性)
通過(guò)Web應(yīng)用的web.xml文件
通常struts2框架按以下搜索順序進(jìn)行加載。
struts-default.xml
struts-plugin.xml
struts.xml
struts.properties
web.xml
如果多個(gè)文件中配置了同一個(gè)struts常量,最后一個(gè)文件的配置會(huì)覆蓋前面文件的配置。
為避免struts.xml的文件過(guò)大,可將配置文件分解成多個(gè)配置文件,然后在struts.xml文件中包含其他配置文件。
3. 實(shí)現(xiàn)Action
為了使開(kāi)發(fā)的Action更規(guī)范,Struts2提供了一個(gè)Action接口,定義了Struts2的Action處理應(yīng)該實(shí)現(xiàn)的規(guī)范。
public interface Action { //定義Action接口里包含的一些結(jié)果字符串 public static final String ERROR = "error"; public static final String INPUT = "input"; public static final String LOGIN = "login"; public static final String NONE = "none"; public static final String SUCCESS = "success"; //定義處理用戶請(qǐng)求的execute()方法 public String execute() throws Exception; }
上面的Action接口里只定義了一個(gè)execute()方法,該接口規(guī)范規(guī)定了Action類(lèi)應(yīng)該包含一個(gè)execute()方法,該方法返回一個(gè)字符串,此外,該接口還定義了5個(gè)字符串常量,他的作用是統(tǒng)一execute()方法的返回值。除此之外,struts2為Action接口提供了一個(gè)實(shí)現(xiàn)類(lèi):ActionSuport。該類(lèi)提供了許多默認(rèn)方法,比如默認(rèn)的用戶請(qǐng)求處理方法,數(shù)據(jù)校驗(yàn)方法等,一般Action類(lèi)繼承ActionSuport類(lèi)。
4. 配置Actionstruts2框架中的核心組件就是Action、攔截器等,struts2利用package和namespace來(lái)對(duì)多個(gè)Action和攔截器進(jìn)行管理。
/error.jsp /talk.jsp http://www.sina.com
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/66954.html
摘要:首先是應(yīng)該了解框架技術(shù)的運(yùn)行流程在此我給大家介紹一種常見(jiàn)的開(kāi)發(fā)模式,這對(duì)于初學(xué)者來(lái)說(shuō)應(yīng)該也是比較好理解的。 很多小伙伴可能一聽(tīng)到框架兩個(gè)字就會(huì)馬上搖頭,腦子里立刻閃現(xiàn)一個(gè)詞---拒絕,其實(shí)我也不例外,但我想告訴大家的是,當(dāng)你真正掌握它時(shí),你會(huì)發(fā)現(xiàn)**SSH**用起來(lái)是那么順手,因?yàn)樗鼘?duì)于開(kāi)發(fā)web應(yīng)用真的很方便,下面就我個(gè)人經(jīng)驗(yàn)和大伙兒談?wù)勅绾卫?*SSH框架技術(shù)**來(lái)進(jìn)行*w...
摘要:也就是說(shuō)映射器就是用于處理什么樣的請(qǐng)求提交給處理。這和是一樣的提交參數(shù)的用戶名編號(hào)提交配置處理請(qǐng)求注冊(cè)映射器包框架接收參數(shù)設(shè)置無(wú)參構(gòu)造器,里邊調(diào)用方法,傳入要封裝的對(duì)象這里的對(duì)象就表示已經(jīng)封裝好的了對(duì)象了。 什么是SpringMVC? SpringMVC是Spring家族的一員,Spring是將現(xiàn)在開(kāi)發(fā)中流行的組件進(jìn)行組合而成的一個(gè)框架!它用在基于MVC的表現(xiàn)層開(kāi)發(fā),類(lèi)似于struts...
摘要:作為一個(gè)開(kāi)發(fā)框架,它為我們很好的提供了一個(gè)開(kāi)發(fā)模板,使用可以減輕開(kāi)發(fā)人員的負(fù)擔(dān)并且可以增強(qiáng)程序的可讀性,下面我們來(lái)說(shuō)說(shuō)如何使用做一個(gè)小例子開(kāi)發(fā)所需要的工具開(kāi)發(fā)環(huán)境開(kāi)發(fā)的包一個(gè)文檔模板開(kāi)發(fā)開(kāi)發(fā)分為以下四步完成導(dǎo)入相應(yīng)的包在文檔中配置的核 **Struts2**作為一個(gè)開(kāi)發(fā)框架,它為我們很好的提供了一個(gè)開(kāi)發(fā)模板,使用**Struts2**可以減輕開(kāi)發(fā)人員的負(fù)擔(dān)并且可以增強(qiáng)程序的可讀性,下面...
閱讀 3011·2021-10-27 14:15
閱讀 2999·2021-09-07 10:18
閱讀 1320·2019-08-30 15:53
閱讀 1570·2019-08-26 18:18
閱讀 3373·2019-08-26 12:15
閱讀 3460·2019-08-26 10:43
閱讀 654·2019-08-23 16:43
閱讀 2207·2019-08-23 15:27