版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Struts2基礎(chǔ)第三單元 Struts2.0框架課程體系課程體系圖學(xué)完本門課程后,你能夠:掌握Struts2的原理使用Struts2構(gòu)建Web項(xiàng)目使用Struts2實(shí)現(xiàn)數(shù)據(jù)校驗(yàn)掌握Struts2攔截器使用Struts2實(shí)現(xiàn)AJAX本門課程目標(biāo)課程項(xiàng)目展示租房管理系統(tǒng)任務(wù)1:搭建Struts2開發(fā)環(huán)境任務(wù)2:使用Struts2輸出“Hello Struts”任務(wù)3:簡單實(shí)現(xiàn)租房管理系統(tǒng)的用戶登錄任務(wù)4:調(diào)用添加房屋信息的業(yè)務(wù)方法本課任務(wù)學(xué)完本次課程后,你能夠:掌握搭建Struts2開發(fā)環(huán)境掌握創(chuàng)建Action掌握Action接收參數(shù)的方式掌握Action方法的調(diào)用本課目標(biāo)搭建開發(fā)環(huán)境 Stru
2、ts2是基于MVC的Web應(yīng)用框架Struts2=Struts1的知名度和市場(chǎng)+WebWork的技術(shù)實(shí)現(xiàn)MVC模式,結(jié)構(gòu)清晰豐富的標(biāo)簽(tag)通過配置文件頁面導(dǎo)航,便于后期維護(hù)與Servlet API松耦合,便于測(cè)試 演示示例:搭建Struts2開發(fā)環(huán)境Struts2獲取 Struts-2.3.16.3-all.zipStruts2主要目錄小結(jié)2-1apps :該文件夾下包含了基于Struts2的示例應(yīng)用docs:該文件夾下包含了Struts2的相關(guān)文檔,包括Struts2的快速入門、Struts2的文檔以及API文檔等內(nèi)容lib :該文件夾下包含了Struts2框架的核心類庫,以及Stru
3、ts2的第三方插件類庫src :該文件夾下包含了Struts2框架的全部源代碼Struts2搭建所需jar包小結(jié)2-2commons-fileupload-1.3.1.jar:Struts文件的上傳和下載commons-io-2.2.jar:文件讀取commons-lang3-3.1.jar:為java.lang包提供擴(kuò)展freemarker-2.3.19.jar:FreeMarker是一個(gè)模板引擎,一個(gè)基于模板生成文本輸出的通用工具ognl-3.0.6.jar:支持ognl表達(dá)式j(luò)avassist-3.11.0.GA.jar:分析、編輯和創(chuàng)建JAVA字節(jié)碼的類庫struts2-core-2.
4、3.16.3.jar:Struts2的核心包xwork-core-2.3.16.3.jar:xwork的核心包asm-*.jar 類似javassitslog4j-1.2.17.jar 日志類庫課堂練習(xí)需求說明解壓Struts-2.3.16.2-all.zip,并使用其中的示例項(xiàng)目資源,搭建Struts2環(huán)境實(shí)現(xiàn)思路創(chuàng)建Web項(xiàng)目,引入Struts2項(xiàng)目所需jar包修改web.xml配置struts.xml完成時(shí)間:10分鐘共性問題集中講解需求說明使用Struts2輸出“Hello Struts”第一個(gè)Struts2應(yīng)用演示 演示示例:使用Struts 2輸出”Hello Struts”課堂練
5、習(xí)需求說明使用Struts2輸出“Hello Struts”實(shí)現(xiàn)思路修改struts.xml配置以及創(chuàng)建helloStruts.jsp頁面完成時(shí)間:10分鐘共性問題集中講解Struts2流程分析web.xmlstruts.xml創(chuàng)建Action普通的Java類,編寫public String execute()方法實(shí)現(xiàn)Action接口,重寫execute()方法繼承ActionSupport類,重寫execute()方法創(chuàng)建Action需求說明使用Struts2的Action輸出“Hello Struts”實(shí)現(xiàn)思路三種方式創(chuàng)建Action類修改struts.xml的添加class屬性升級(jí)第一個(gè)
6、Struts2應(yīng)用演示 演示示例:使用Action輸出”Hello Struts”Struts2流程再分析web.xmlstruts.xml 演示示例:查看action的默認(rèn)class值課堂練習(xí)需求說明創(chuàng)建Struts2的Action輸出“Hello Struts”實(shí)現(xiàn)思路繼承ActionSupport類,實(shí)現(xiàn)execute()方法修改struts.xml的添加class屬性完成時(shí)間:10分鐘共性問題集中講解Struts2基于MVC的Web應(yīng)用框架將請(qǐng)求和展現(xiàn)分開Struts2與MVCM(模型層)應(yīng)用程序的業(yè)務(wù)邏輯和業(yè)務(wù)數(shù)據(jù)V(視圖層)應(yīng)用程序的輸出頁面或者界面比如:JSP、HTMLC(控制層
7、)協(xié)調(diào)模型和視圖比如:ServletStruts2基于MVC的Web應(yīng)用框架將請(qǐng)求和展現(xiàn)分開Struts2與MVCM(模型層)應(yīng)用程序的業(yè)務(wù)邏輯和業(yè)務(wù)數(shù)據(jù)V(視圖層)應(yīng)用程序的輸出頁面或者界面比如:JSP、HTMLC(控制層)核心控制器:StrutsPrepareAndExecuteFilter業(yè)務(wù)控制器:ActionAction能做什么控制業(yè)務(wù)邏輯如果業(yè)務(wù)邏輯很復(fù)雜,可以把業(yè)務(wù)邏輯構(gòu)建為業(yè)務(wù)類,在Action中調(diào)用業(yè)務(wù)類返回結(jié)果字符串方便的處理數(shù)據(jù)比如:Action中以屬性方式接收用戶數(shù)據(jù)Action作用需求說明以Action中定義屬性的方式接收用戶登錄信息,簡單實(shí)現(xiàn)租房管理系統(tǒng)的用戶登錄功
8、能,并在登錄成功頁面顯示用戶相關(guān)信息簡單實(shí)現(xiàn)登錄功能演示 演示示例:屬性方式獲得用戶數(shù)據(jù)Action接收參數(shù)(屬性方式)控制業(yè)務(wù)邏輯表單參數(shù)名稱必須在Action中有對(duì)應(yīng)的setter以及getter解決亂碼修改struts.xml,添加代碼頁面顯示應(yīng)用場(chǎng)景接收的參數(shù)字段個(gè)數(shù)少的時(shí)候適合使用,比如對(duì)于搜索應(yīng)用,接收用戶輸入的搜索條件Action接收參數(shù)方式一Action接收參數(shù)(JavaBean方式):將模型數(shù)據(jù)從Action中分離了出來定義實(shí)體類,為實(shí)體添加屬性以及setter和gettercom.pb.entity.User為Action添加實(shí)體屬性以及setter和getterUser
9、user修改表單參數(shù)name為實(shí)體對(duì)象名.屬性名取值通過的形式Action接收參數(shù)方式二 演示示例:JavaBean方式獲得用戶數(shù)據(jù)需求說明在Action中分別以屬性方式和JavaBean方式接收用戶登錄信息,簡單實(shí)現(xiàn)租房管理系統(tǒng)的用戶登錄功能,并在登錄成功頁面顯示用戶相關(guān)信息課堂練習(xí)完成時(shí)間:15分鐘共性問題集中講解Action接收參數(shù)的方式屬性方式JavaBean方式ModelDriven方式Action中對(duì)應(yīng)表單參數(shù)的屬性及對(duì)應(yīng)的setter、getter為Action添加實(shí)體屬性以及setter和getterAction實(shí)現(xiàn)ModelDriven接口,重寫方法getModel(); A
10、ction中要提供JavaBean類型的屬性,需要實(shí)例化,但不需要相應(yīng)的setter和getter方法頁面中(1)Form中元素name取值屬性名(2)取值:(1)Form中元素name取值對(duì)象名.屬性名(2)取值:(1)Form中元素name取值屬性名(2)取值:應(yīng)用場(chǎng)景接收的參數(shù)字段個(gè)數(shù)少字段多,可以封裝為一個(gè)對(duì)象;將模型數(shù)據(jù)從Action中分離出來時(shí)和JavaBean方式相似,不常用用常用常訪問Action時(shí),默認(rèn)調(diào)用的是execute()方法使用method屬性public class HouseAction extends ActionSupport public String ex
11、ecute ( ) return success; 訪問Action時(shí),默認(rèn)調(diào)用的是execute()方法可以在Action中定義多個(gè)業(yè)務(wù)方法方法簽名要與execute( )方法相同使用method屬性public class HouseAction extends ActionSupport public String add() return success; public String update() return success; 訪問Action時(shí),默認(rèn)調(diào)用的是execute()方法可以在Action中定義多個(gè)業(yè)務(wù)方法方法簽名要與execute( )方法相同配置多個(gè)標(biāo)簽method
12、屬性指定調(diào)用的方法使用method屬性public class HouseAction extends ActionSupport public String add() return success; public String update() return success; 演示示例:使用method屬性配置Action動(dòng)態(tài)方法調(diào)用DMI(dynamic method invocation)一個(gè)Action類中可以有多個(gè)業(yè)務(wù)方法只需要配置一個(gè)標(biāo)簽不需要使用method屬性調(diào)用時(shí)指出Action名和業(yè)務(wù)方法使用動(dòng)態(tài)方法調(diào)用public class HouseAction extends A
13、ctionSupport public String add() return success; public String update() return success; 動(dòng)態(tài)方法調(diào)用DMI(dynamic method invocation)一個(gè)Action類中可以有多個(gè)業(yè)務(wù)方法只需要配置一個(gè)標(biāo)簽不需要使用method屬性調(diào)用時(shí)指出Action名和業(yè)務(wù)方法使用動(dòng)態(tài)方法調(diào)用 演示示例:動(dòng)態(tài)方法調(diào)用根據(jù)Action業(yè)務(wù)方法的返回值跳轉(zhuǎn)到不同的結(jié)果視圖的name屬性 public String add() throws Exception return addSuccess;public String update() throws Exception return updateSuccess; /houseAddSuccess.jsp /houseUpdateSuccess.jsp 需求說明使用動(dòng)態(tài)方法調(diào)用添加房屋
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新版五年級(jí)英語下冊(cè)教案
- 上課遲到檢討書(合集15篇)
- 行業(yè)調(diào)研報(bào)告匯編4篇
- 中考熱點(diǎn)素材集合15篇
- 電子公司實(shí)習(xí)報(bào)告匯編7篇
- 《呼蘭河傳》讀書筆記(15篇)
- 邊城讀書筆記(15篇)
- 喹諾酮類抗菌藥物合理使用的理性思考
- 七年級(jí)地理教學(xué)工作計(jì)劃范例(20篇)
- 入伍保留勞動(dòng)關(guān)系協(xié)議書(2篇)
- 4s店維修原廠協(xié)議書范文
- 2024-秋季新版人教版三年級(jí)上冊(cè)英語單詞
- 中國上市及新三板掛牌公司低空經(jīng)濟(jì)發(fā)展報(bào)告2024
- 2025屆浙江省學(xué)軍中學(xué)高三下學(xué)期第五次調(diào)研考試物理試題含解析
- 2020-2021學(xué)年北京市西城區(qū)七年級(jí)(上)期末數(shù)學(xué)試卷(附答案詳解)
- DB13-T 5821-2023 預(yù)拌流態(tài)固化土回填技術(shù)規(guī)程
- 地形圖測(cè)繪報(bào)告
- 村集體“三資”管理存在的問題分析
- 2024年江蘇蘇州幼兒師范高等??茖W(xué)校招考聘用教師及專職輔導(dǎo)員7人高頻考題難、易錯(cuò)點(diǎn)模擬試題(共500題)附帶答案詳解
- 2024年7月國家開放大學(xué)本科《中國法律史》期末紙質(zhì)考試試題及答案
- 八年級(jí)生物上冊(cè)知識(shí)點(diǎn)總結(jié)(填空版+答案)
評(píng)論
0/150
提交評(píng)論