




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
總體課程導(dǎo)航Struts2框架技術(shù)入門介紹Action詳解配置參數(shù)詳解
OGNL標(biāo)簽
國際化數(shù)據(jù)驗證文件上傳與下載攔截器轉(zhuǎn)換器…Struts2本章節(jié)授課目標(biāo)入門介紹MVC設(shè)計模式
Struts2框架簡介配置入門編寫Struts2版本HelloWorld45MVC設(shè)計模式MVC構(gòu)成ModelControllerView6為什么使用MVC設(shè)計模式?MVC設(shè)計模式的優(yōu)點(diǎn)代碼結(jié)構(gòu)清晰松耦合便于處理開發(fā)人員分工例如對前臺技術(shù)擅長的可以更多的處理前臺交互。增加了代碼的復(fù)用性例如邏輯處理算法可以用于webapplication也可以用于webservice。更利于單元測試78發(fā)展歷史Struts2框架發(fā)展歷史由WebWork2框架發(fā)展而成,和Struts1框架沒有任何關(guān)系。WebWork2(XWork)框架倡導(dǎo)的是一種大量的基于攔截器式(類似于filter機(jī)制)的編程框架,基礎(chǔ)性的工作都是通過攔截器完成的,例如自動綁定表單數(shù)據(jù)到field變量等。Struts2實際上是對WebWork2框架的增強(qiáng)和擴(kuò)展,使其更適合處理
web編程。Struts2框架的基礎(chǔ)是WebWork2(Xwork),所以Struts2工作時需要使用Xwork框架代碼。9Struts2框架介紹Struts2框架項目主頁10Struts2框架工作流程框架工作流程1112配置Struts2開發(fā)環(huán)境配置Struts2開發(fā)環(huán)境分幾步:1.新建空白web
project
2.加入struts2組件包(*.jar)
3.修改web.xml增加struts2工作配置參數(shù)
4.配置struts2工作時需要使用的參數(shù)文件5.使用13組件包使用Struts2框架有最少需要的組件包,見下表文件名說明struts2-core-2.x.x.x.jarStruts2框架的核心庫xwork-2.x.x.x.jarXwork類庫,Struts2在其上構(gòu)建ognl-2.x.x.jar對象圖導(dǎo)航語言,Struts2使用的一種表達(dá)式語言freemarker-2.x.x.jarStruts2的UI標(biāo)簽的模板使用
FreeMarker編寫javassist-3.x.xx.jarStruts2.2版本以后新增加的必須包mon-langcommon-loggin兩個包一個common-fileupload包一個common-io包,一個common-lang包14web.xml中要做的修改要讓struts2框架可以正常處理http請求和響應(yīng),需要在
web.xml文件中定義過濾器配置參數(shù)。<filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*
</url-pattern></filter-mapping>注意:org.apache.struts2.dispatcher.FilterDispatcher在2.1.3版本以后已經(jīng)過時了15struts2配置參數(shù)文件Struts2配置參數(shù)可以從多個不同渠道獲取,最簡單與常見的方法是在WEB-INF/classes目錄中配置一個struts.xml文件,該xml文件必須遵循struts2框架的dtd校驗規(guī)定。<?xml
version="1.0"encoding="UTF-8"
?><!DOCTYPE
struts
PUBLIC
"-//Apache
Software
Foundation//DTD
Struts
Configuration
2.0//EN" "
"><struts><constant
name="struts.enable.DynamicMethodInvocation"
value="false"
/><constant
name="struts.devMode"
value="false"
/><include
file="example.xml"/><package
name="default"
namespace="/"
extends="struts-default"><default-action-ref
name="index"
/><action
name="index"><result
type="redirectAction"><param
name="actionName">HelloWorld</param><param
name="namespace">/example</param></result></action></package></struts>DTD頭各種配置參數(shù)16開發(fā)環(huán)境放在src下即可小結(jié)Strtus2框架壓縮包中帶有很多的.jar文件,配置開發(fā)環(huán)境時不能不加選擇的全部復(fù)制使用,最低只復(fù)制表格中列出的組件包即可。web.xml配置參數(shù)在一些比較舊的Struts2參考書籍中使用的是舊的filter,建議在新版本中使用新的filter。Struts2的xml配置參數(shù)文件必須符合校驗規(guī)則,建議每一個
xml配置參數(shù)文件都帶有該DTD校驗頭信息。
struts.xml存放路徑有要求,要求在運(yùn)行時放在WEB-INF/classes目錄中,開發(fā)狀態(tài)一般放在src下會自動部署。個別組件包在示例程序中,如blank.war中可以找到
javassit3.x.jar文件。1718引言一個程序員對書法十分感興趣,退休后決定在這方面有所建樹。于是花重金購買了上等的文房四寶。
一日,飯后突生雅興,一番磨墨擬紙,并點(diǎn)上了上好的檀香,頗有王羲之風(fēng)范,又具顏真卿氣勢,定神片刻,潑墨揮毫,鄭重地寫下一行字:hello
world.19Hello
WorldStruts2框架的Hello
World開發(fā)過程
1.搭建框架開發(fā)環(huán)境
2.編寫一個類作為MVC設(shè)計模式的Controller3.編寫一個jsp頁面作為MVC設(shè)計模式的View4.配置struts.xml文件定義配置參數(shù)20Hello
World編寫Action類package
com.shinowit;public
class
HelloWorldAction
{public
String
execute(){return
"success";}}21Hello
World編寫處理數(shù)據(jù)展示的jsp<%@
page
language="java"
contentType="text/html;
charset=utf-8"pageEncoding="utf-8"%><!DOCTYPE
html
PUBLIC
"-//W3C//DTD
HTML
4.01Transitional//EN"
"
"><html><head><meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"><title>hello
world
demo</title></head><body>
hello
world!</body></html>22Hello
World編寫struts.xml配置文件<?xml
version="1.0"
encoding="UTF-8"
?>23"-//Apache
Software
Foundation//DTD"
"><!DOCTYPE
struts
PUBLICStruts
Configuration
2.0//EN"<struts><constant
name="struts.enable.DynamicMethodInvocation"value="false"
/><constant
name="struts.devMode"
value="true"
/><package
name="default"
namespace="/"
extends="struts-default"><action
name="hello"class="com.shinowit.HelloWorldAction"><result
name="success">/hello.jsp</result></action></package></struts>Hello
World運(yùn)行效果訪問24Hello
WorldStruts2
web程序工作流程25Hello
World小結(jié)程序員在配置好開發(fā)框架環(huán)境以后只需要不斷的編寫action類、xml配置參數(shù)、jsp頁面即可完成struts2開發(fā)。Action類可以是個很普通的java類,甚至和servletapi技術(shù)沒有任何關(guān)系。Action類的邏輯處理結(jié)果是一個指令形式返回的,即action類的方法
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智慧社區(qū)環(huán)境美化與綠化養(yǎng)護(hù)管理合同
- 二零二五年度房產(chǎn)一次性付款租賃合同
- 家具城裝修履約保證金合同
- 高中地理課程跨學(xué)科教學(xué)設(shè)計研究
- 雙擺臺五軸機(jī)床動態(tài)特性分析與評價方法研究
- 烏梅多糖的提取及活性研究
- 2025年抽紗刺繡工藝品項目合作計劃書
- 咖啡館翻新抵房租合同范本
- 金融科技貸款居間服務(wù)合同
- 貸款擔(dān)保居間合同范本
- 綿陽市三臺縣鄉(xiāng)鎮(zhèn)地圖矢量可編輯課件行政區(qū)劃邊界高清(四川省)
- 爭做“四有好老師”-當(dāng)好“四個引路人”
- 術(shù)語翻譯與本地化
- 2024年全國高考甲卷語文真題試卷含答案
- AQ/T 1089-2020 煤礦加固煤巖體用高分子材料(正式版)
- 幼兒園故事繪本《賣火柴的小女孩兒》課件
- DB32-T 4752-2024 一體化污水處理設(shè)備通.用技術(shù)要求
- 妊娠期高血壓疾病試題
- 醫(yī)院多重耐藥菌感染管理規(guī)范
- 《公平競爭審查條例》微課
- 《肺部疾病 案例分析-原發(fā)性肺癌》課件
評論
0/150
提交評論