版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三講,Struts2配置文件及Struts.xml配置分析,教學(xué)班級(jí):軟件1091,J2EE企業(yè)級(jí)應(yīng)用程序開(kāi)發(fā)J2EEJSP(1),2,回顧,初步掌握Action控制類(lèi)以及ModelDriven Action的實(shí)現(xiàn); 理解使用action的屬性接收用戶輸入; 掌握在action中實(shí)現(xiàn)訪問(wèn)request、session和application對(duì)象。 掌握采用不同方式實(shí)現(xiàn)接收和儲(chǔ)存用戶輸入的信息。,3,目標(biāo),初步了解Struts2配置文件的作用; 了解Struts2配置文件的加載順序; 進(jìn)一步掌握Web.xml的作用和配置 ; 著重掌握struts.xml配置文件的元素和相關(guān)屬性的配置。,4,一
2、Struts2配置文件的作用及加載順序,提問(wèn):Struts2的配置文件有哪些? 1作用,Web.xml:包含所有必須的框架組件的web部署描述符。 Struts2主要加載前端控制器、及初始化參數(shù) struts.xml:定義應(yīng)用自身使用的action映射、攔截器及 常量、 result/view定義; struts-default.xml:定義框架自身用的action映射及result struts-plugin.xml:struts插件使用的配置文件 perties:定義框架自身的全局變量及框架屬性。,例如:當(dāng)使用struts和spring結(jié)合時(shí)就需要在web.xml中引用
3、該配置文件;,5,2加載順序 struts-default.xml struts-plugin.xml struts.xml perties web.xml 若之前的配置文件設(shè)置過(guò)某一屬性,則以后加載的配置文件對(duì)于相同屬性的設(shè)置,會(huì)覆蓋之前的設(shè)置。,6,7,二Web.xml,1作用 2前端控制器的配置 FilterName ClassName 參數(shù)名 參數(shù)值 FilterName /* ,作為核心控制器為所有的表示層請(qǐng)求提供了一個(gè)集中的訪問(wèn)點(diǎn),才能獲得Struts2框架所提供的服務(wù),也是一個(gè)部署描述文件,是所有Java Web應(yīng)用程序的核心配置文件。,8,說(shuō)明: 1)前端控
4、制器,用于對(duì)Struts框架進(jìn)行初始化,以及處理所有的請(qǐng)求; 2)可選的ActionContextCLeanUp過(guò)濾器,來(lái)處理特殊的清除任務(wù)(SiteMesh插件) 3)和都有一個(gè)子元素,它們的值必須相同,不必是Struts2. 4)參數(shù)設(shè)置:用于指定的攔截器時(shí),配置相關(guān)的參數(shù)。 struts.devMode true 參數(shù):系統(tǒng)自動(dòng)加載指定的系統(tǒng)配置文件,也可以是常量名及常量值。 5)“*”針對(duì)所有URI進(jìn)行映射,9,示例: struts2 org.apache.struts2.dispatcher.FilterDispat cher org.apache.struts2.dispatche
5、r.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* ,10,3配置歡迎文件列表的元素 /index.jsp ,提問(wèn):index.jsp是否可以改成其他頁(yè)面名?,11,三struts.xml配置文件,1作用 是整個(gè)Struts2框架的核心,主要負(fù)責(zé)管理Web應(yīng)用中業(yè)務(wù)控制器Action的映射,以及Action的Result定義,還有Bean、常量、包、攔截器(Interceptor)的配置等。 提問(wèn):系統(tǒng)掃描struts.xml文件位置? 2文件結(jié)構(gòu) 見(jiàn):附件“struts.xml文件結(jié)構(gòu)”,12,3Packages 作用:用于定義包配置及實(shí)
6、現(xiàn)包中所有Action統(tǒng)一管理,同時(shí)以便其它包繼承該 格式: *.jsp ,name:是必填元素,它作為一個(gè)關(guān)鍵字被后邊的包引用; Extends:它允許包擴(kuò)展一個(gè)和多個(gè)前邊定義的包。注意,struts.xml文件是至上而下處理的,所有被擴(kuò)展的包,需要在擴(kuò)展包前定義; Abstract:該包不能有action的定義,但可result、攔截器等,可用抽象設(shè)置一些默認(rèn)值,其他的包從抽象包繼承,減小配置工作,降低維護(hù)工作。 例如:struts-default.xml中定義包struts-default就是一個(gè)抽象包。 Namespace: 定義該包的命名空間;因有命名空間可以根據(jù)請(qǐng)求的URL知道使用
7、那個(gè)Action來(lái)處理(不同包里可有相同名的action), Default的namespace是一個(gè)空字符串“”,如果在指定的配置文件中,沒(méi)有找到action,缺省的namespace也會(huì)被查找。,13,格式: *.jsp ,Action映射是框架的基本“工作單元”,配置邏輯視圖和物理視圖資 源之間的映射 Action映射就是將一個(gè)請(qǐng)求URI(action的name)映射到一個(gè)action類(lèi),框架就使用這個(gè)映射確定如何處理請(qǐng)求,即調(diào)用相應(yīng)的方法。 Action只是一個(gè)控制器,它并不直接對(duì)瀏覽者生成任何響應(yīng),因此,Action處理完用戶請(qǐng)求后,Action需要將指定的視圖資源呈現(xiàn)給用戶。,na
8、me只能定義一個(gè),是必須的,在該包是唯一的 class指定action的類(lèi)名,默認(rèn)為 com.opensymphony.xwork2.ActionSupport類(lèi) method:默認(rèn)為execute(),或與execute()相同格式的方法。 說(shuō)明:定義默認(rèn)的action,但必須在action元素之前使用 若請(qǐng)求找不到時(shí)用:,14,4)通配符映射 示例: /1.jsp 注釋?zhuān)涸L問(wèn)/editNews,則特殊的記號(hào)1對(duì)應(yīng)通配符(*) 執(zhí)行成功后導(dǎo)向的結(jié)果頁(yè)面是News.jsp; 示例: /0.jsp 注釋?zhuān)涸L問(wèn)/News_edit時(shí),name中第1個(gè)*匹配N(xiāo)ews,第2個(gè)*匹配edit,class
9、中1被News所替換,method中2被edit所替換,結(jié)果映射中0被News_edit所替換。結(jié)果?,15,5)動(dòng)態(tài)方法調(diào)用(DMI) 無(wú)須配置就可直接調(diào)用Action中的非execute()方法的方式: 格式:Action名!方法名.action 示例: *.jsp 請(qǐng)求:/news!create.action,則調(diào)類(lèi)NewsAction的create()方法 /news!edit.action,則調(diào)用類(lèi)NewsAction的edit()方法,16,6)ruselt子元素 Name:是邏輯視圖名,action中或默認(rèn)返回的別名 Type:不同類(lèi)型的代表不同類(lèi)型的結(jié)果輸出,默認(rèn)為dispat
10、cher,輸出JSP頁(yè)面 實(shí)現(xiàn)邏輯視圖和物理視圖資源之間的映射,并且是多個(gè)映射;,17,4Bean配置 1)格式 或者 ,功能:配置自己編寫(xiě)的組件實(shí)現(xiàn)類(lèi)來(lái)擴(kuò)展或替換框架的某一部分組件 把核心組件的一個(gè)實(shí)例注入到框架,從而實(shí)現(xiàn)組件的功能或作用 注入靜態(tài)方法或常量,讓Bean接收框架實(shí)現(xiàn)值的注入,18,格式 或者 ,Class:必需的屬性,用來(lái)指定此配置的Bean對(duì)應(yīng)的實(shí)現(xiàn)類(lèi) Name:用來(lái)指定Bean實(shí)例的名字,相同類(lèi)型的多個(gè)Bean,name值不允許相同 Type:用來(lái)指定Bean實(shí)例實(shí)現(xiàn)的struts2的規(guī)范,若配置Bean是作為框架的一個(gè)核心組件來(lái)使用,則應(yīng)指定其值 Scope:用來(lái)指定B
11、ean實(shí)例的作用范圍,其值是default、request、session、tread Static:是否使用靜態(tài)方法或常量注入,19,4)示例 . ,20,5常量(Constant)的配置 1)格式 2)作用 通過(guò)常量的配置,可改變Struts2框架和插件的行為,滿足不同Web應(yīng)用的要求。,說(shuō)明:配置常量就是配置struts2的屬性,若在多個(gè)文件中聲明,按下列文件時(shí)行搜索: struts-default.xml struts-plugin.xml struts.xml perties web.xml,21,3)屬性 Name:用來(lái)指定常量的名稱 Value:用來(lái)指定常量的
12、值 4)示例, ,struts.devMode也就是struts的開(kāi)發(fā)模式 ,為true,以后一旦就改該文件中的配置就不用去重啟tomcat,22,Web.xml文件的常量配置: struts2 org.apache.struts2.dispatcher.ng.filter . StrutsPrepareAndExecuteFilter struts.devMode true ,23,6包含(Include)配置 include元素包含其他的配置文件。 1)格式 2)作用 在struts.xml中使用include元素包含其他模塊的配置文件。被include的每個(gè)配置文件必須和struts.x
13、ml有一樣的格式。,24,7攔截器(Interceptor)配置 格式:見(jiàn)附件“攔截器(Interceptor)配置格式” 1)自定義全局?jǐn)r截器 其他包引用的方便可以把多個(gè)攔截器放在一起,組成攔截器棧: ,25,2)在action中引用攔截器 3)配置默認(rèn)的攔截器 說(shuō)明:當(dāng)配置一個(gè)包后,可以為其指定特定的攔截器。這樣如果該包中的Action沒(méi)有配置攔截器,那么默認(rèn)的攔截器將起作用(每個(gè)包只能定義一個(gè)默認(rèn)攔截器),26,4)開(kāi)啟和屏蔽攔截器 在默認(rèn)情況下,若某個(gè)Action定義了攔截器棧,會(huì)啟動(dòng)所有攔截器 攔截器別名1,攔截器名2 攔截器名2 ,提問(wèn):“攔截器別名2”是否開(kāi)啟?,27,5)中攔截器方法過(guò)濾 在默認(rèn)情況下若某個(gè)Action定義了攔
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學(xué)體育作業(yè)制度規(guī)范
- 醫(yī)輔耗材規(guī)范管理制度
- 寢室進(jìn)出制度管理規(guī)范
- 規(guī)范四議兩公開(kāi)工作制度
- 急診醫(yī)生接班制度規(guī)范
- 學(xué)生乘船安全制度規(guī)范
- 2025年公司招標(biāo)采購(gòu)自查自糾評(píng)估報(bào)告范文
- 聘用教職工流程規(guī)范制度
- 規(guī)范互聯(lián)網(wǎng)人才管理制度
- 藥膳室工作制度管理規(guī)范
- 2025中式面點(diǎn)師技師理論考試試題及答案
- 生產(chǎn)經(jīng)營(yíng)單位事故隱患內(nèi)部報(bào)告獎(jiǎng)勵(lì)機(jī)制實(shí)踐與案例
- 2024-2025學(xué)年山西省晉中市榆次區(qū)上學(xué)期期末八年級(jí)數(shù)學(xué)試卷
- 藥品信息服務(wù)合同協(xié)議
- 山西省太原市2024-2025學(xué)年高三上學(xué)期期末學(xué)業(yè)診斷英語(yǔ)試卷2
- 偷盜刑事和解協(xié)議書(shū)
- 框架廠房建設(shè)合同協(xié)議
- 2025屆安徽省淮北市、淮南市高三上學(xué)期第一次質(zhì)量檢測(cè)物理試題(原卷版+解析版)
- 保護(hù)生物學(xué)第三版
- 運(yùn)輸公司安全管理制度
- 中藥硬膏熱貼敷操作流程
評(píng)論
0/150
提交評(píng)論