版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
重慶正大軟件學(xué)院軟件系《MVC框架程序設(shè)計》電子教案重慶正大軟件學(xué)院軟件系《MVC框架程序設(shè)計》課程組重慶正大軟件職業(yè)技術(shù)學(xué)院教案(項目類)授課對象系別軟件系本次課學(xué)時4學(xué)時年級班次大二章節(jié)題目第1章struts標(biāo)簽?zāi)康囊螅ê寄芤螅┝私釹truts2標(biāo)簽相關(guān)概念掌握Struts2常用標(biāo)簽的基本用法本節(jié)重點(diǎn)掌握Struts2常用標(biāo)簽的基本用法本節(jié)難點(diǎn)了解Struts2標(biāo)簽相關(guān)概念教學(xué)方法項目教學(xué)法教學(xué)用具機(jī)房、屏幕廣播問題引入通過用戶注冊案例,從而引出本次課程。難點(diǎn)與重點(diǎn)講解方法引導(dǎo)、分析、講解、實作演示本次課小結(jié)課程小結(jié)教后禮記討論、思考題、作業(yè)(含實訓(xùn)作業(yè))完成本次課的課堂任務(wù)填寫實驗報告任務(wù)介紹(5分鐘)使用Struts2標(biāo)簽實現(xiàn)簡單注冊頁面(如圖1.2-1所示),表單項目有:用戶名、真實名、密碼、確認(rèn)密碼、年齡、手機(jī)、電子郵箱等單行輸入框;有性別單選框(選擇男或女)省份下拉框(選擇重慶、北京、上海、天津);個人愛好多選框(可選擇游泳、徒步、打乒乓、看書、其他);提交按鈕以及用戶注冊標(biāo)題。圖1.2-1用戶注冊頁面任務(wù)解析(50-60分鐘)創(chuàng)建名為Register.jsp的注冊頁面文件導(dǎo)入Struts2標(biāo)簽庫標(biāo)記在注冊頁面中添加注冊標(biāo)題并加入表單標(biāo)簽在注冊頁面中加入各種注冊所需輸入框及按鈕詳細(xì)步驟創(chuàng)建名為Register.jsp的注冊頁面文件在已建的工程的WebContent或webroot目錄下創(chuàng)建一個Register.jsp頁面。導(dǎo)入Struts2標(biāo)簽庫標(biāo)記在代碼<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%>下面,導(dǎo)入Struts2標(biāo)簽庫。代碼為:<%@taglibprefix="s"uri="/struts-tags"%>在注冊頁面中添加注冊標(biāo)題并加入表單標(biāo)簽首先在頁面中加入標(biāo)題且居中顯示,關(guān)鍵代碼如下:<center>用戶注冊</center>接著加入表單標(biāo)簽且同樣居中顯示,關(guān)鍵代碼如下:<center> <s:formaction="register.action"> </s:form></center>在注冊頁面中加入各種注冊所需輸入框及按鈕在<s:form></s:form>表單標(biāo)簽間加入各種Struts2表單標(biāo)簽,完成注冊頁面。具體用法請參考前文中各種標(biāo)簽的使用方法,最后完成注冊頁面的完整參考代碼如下:<%@pagelanguage="java"pageEncoding="utf-8"%><%@taglibprefix="s"uri="/struts-tags"%><%@taglibprefix="sx"uri="/struts-dojo-tags"%><html> <head> <title>用戶注冊</title> <sx:headextraLocales="utf-8"/> </head> <body> <center> 用戶注冊 </center> <center> <s:formaction="register.action"> <s:textfieldname="name"label="*會員登陸名"> </s:textfield> <s:textfieldname="username"label="真實姓名"> </s:textfield> <s:passwordname="pass"label="*輸入密碼"> </s:password> <s:passwordname="repass"label="*確認(rèn)密碼"> </s:password> <s:radiolist="#{‘1’:’男’,’0’:’女’}"value="1" label="性別"name="sex"> </s:radio> <s:selectname="province" list="{‘重慶’,’北京’,’上海’,’天津’}" label="省份"> </s:select> <s:textfieldname="age"label="年齡"></s:textfield> <sx:datetimepickername="birth" displayFormat="yyyy-MM-dd"label="生日" accesskey="false"language="utf-8"> </sx:datetimepicker> <s:checkboxlistname="love"label="愛好" list="{‘游泳’,’徒步’,’打乒乓’,’看書’,’其他’}"> </s:checkboxlist> <s:textfieldname="mobile"label="手機(jī)"> </s:textfield> <s:textfieldname="email"label="電子郵箱"> </s:textfield> <s:submitvalue="提交"></s:submit> </s:form> </center> </body></html>根據(jù)任務(wù)提出問題(45-55分鐘)什么是struts2標(biāo)簽?它有什么哪些類別?使用Struts2標(biāo)簽的前提?如何使用Struts2標(biāo)簽來制作注冊頁面?表單如何做?輸入框、密碼框如何做?單選框如何做?復(fù)選框如何做?下拉選擇框如何做?多行輸入框如何做?提交按鈕如何做?日期選擇如何做?問題解析(45-55分鐘)Struts2標(biāo)簽的相關(guān)概念在早期Web應(yīng)用開發(fā)過程中,表現(xiàn)層的JSP頁面主要使用JAVA腳本來控制輸出。在這種方式下,JSP頁面里大量嵌套了JAVA腳本,并且通過JAVA語言里的if條件語句,for循環(huán),while循環(huán)等等來控制輸出。這種方式的結(jié)果導(dǎo)致JSP頁面里幾乎是JAVA語言的子集。當(dāng)JSP頁面里大量嵌套了JAVA腳本時,整個頁面的可讀性下降,因而可維護(hù)性也隨之下降。即使在前期的開發(fā)階段,由于頁面美工人員不懂JAVA語言,故無法參與JSP頁面的開發(fā);然而懂JAVA語言的人員,卻不懂頁面的美工設(shè)計。因此,大量嵌套JAVA腳本的JSP技術(shù)不利于團(tuán)隊協(xié)作開發(fā)。從JSP規(guī)范1.1版以后,JSP增加了自定義標(biāo)簽庫的規(guī)范,自定義標(biāo)簽庫是一種非常優(yōu)秀的組件技術(shù)。通過使用自定義標(biāo)簽庫,可以在簡單的標(biāo)簽中封裝復(fù)雜的功能。通過自定義標(biāo)簽庫,我們就可以在自定義標(biāo)簽中封裝復(fù)雜的表現(xiàn)邏輯,從而避免了在JSP嵌套JAVA腳本。自定義標(biāo)簽是一種非常優(yōu)秀的可復(fù)用技術(shù),一旦開發(fā)了滿足某個表現(xiàn)邏輯的標(biāo)簽,就可以多次重復(fù)使用該標(biāo)簽。使用自定義標(biāo)簽的優(yōu)勢有:標(biāo)簽的使用更加簡單,無需JAVA語言知識,即可開發(fā)JSP頁面,可以通過使用簡單的標(biāo)簽,完成復(fù)雜的表現(xiàn)邏輯。避免了JSP頁面中嵌套JAVA腳本,因此開發(fā)了JSP頁面無需JAVA語言知識,故更有利于大型應(yīng)用的團(tuán)隊協(xié)作開發(fā)。JSP頁面不再嵌套JAVA腳本,JSP頁面的可讀性提高,更有利于頁面的后期維護(hù),升級。
由一系列功能相似、邏輯上互相聯(lián)系的標(biāo)簽構(gòu)成的集合稱為標(biāo)簽庫。由于MVC框架都是表現(xiàn)層框架,故所有的MVC框架都會提供自己的定義標(biāo)簽庫。Struts2一樣也提供了大量標(biāo)簽,用于簡化應(yīng)用的表現(xiàn)邏輯。Struts2標(biāo)簽庫分類:Struts2并未嚴(yán)格提供標(biāo)簽庫的分類,它把所有標(biāo)簽都定義在一個默認(rèn)名為s的標(biāo)簽庫里。雖然Struts2把所有的標(biāo)簽都定義在URI為”/struts-tags”的命名空間下,但我們依然可以對Struts2標(biāo)簽進(jìn)行簡單的分類,從在頁面所起的作用來區(qū)分,可以分成如下3類:UI(UserInterface,用戶界面)標(biāo)簽:主要用于生成HTML元素的標(biāo)簽。非UI標(biāo)簽:主要用于數(shù)據(jù)訪問,邏輯控制等的標(biāo)簽。Ajax標(biāo)簽:用于Ajax(AsynchronousJavaScriptAndXML)支持的標(biāo)簽。使用Struts2標(biāo)簽:使用WinRAR打開Struts2-core-2.x.x.jar文件,在該壓縮包的META-INF路徑下找到struts-tags.tld文件,這就是Struts2的標(biāo)簽庫文件。在JSP頁面中使用Struts2標(biāo)簽的前提在使用Struts2標(biāo)簽前,必須先使用taglib指令導(dǎo)入Struts2標(biāo)簽庫定義。在頁面中使用如下代碼來導(dǎo)入Struts2標(biāo)簽庫:<%@taglibprefix=”s”uri=”/struts-tags”%>使用Struts2標(biāo)簽的UI標(biāo)簽來完成注冊頁面使用表單標(biāo)簽<s:formname=“表單名”method=“post或者get”action=“映射地址">說明:與html的form標(biāo)簽類似,參數(shù)沒有變化,但是action的映射地址和servlet的映射地址有區(qū)別,地址前是無需加/的。使用單行輸入框標(biāo)簽<s:textfieldname=“輸入框名字"></s:textfield>說明:與html的inputtype=“text”標(biāo)簽類似,簡寫<s:textfieldname=“輸入框名字”/>。使用密碼輸入框標(biāo)簽:<s:passwordname=“輸入框名"/>說明:與html的inputtype=“password”標(biāo)簽類似。使用單選框標(biāo)簽<s:radioname=“單選框名”list="#{'實際值':'顯示值','實際值':'顯示值',…}"value="0"></s:radio>說明:與html的<inputtype=“radio”>標(biāo)簽類似,list后邊就是設(shè)置單選項,常用OGNL表達(dá)式中的標(biāo)識符:#號配合大括號{}完成對選項集合的描述:多個選項之間用逗號隔開并放入{}之間。其中“顯示值”即用戶在瀏覽器頁面中看到的該選項的名稱,“實際值”是該選項在表單中實際的數(shù)值,可以理解為頁面背后的能代表該選項的一個數(shù)據(jù),它和“顯示值”可以不相同。注:OGNL是Object-GraphNavigationLanguage的縮寫,它是一種功能強(qiáng)大的表達(dá)式語言,通過它簡單一致的表達(dá)式語法,可以存取對象的任意屬性,調(diào)用對象的方法,遍歷整個對象的結(jié)構(gòu)圖,實現(xiàn)字段類型轉(zhuǎn)化等功能。value屬性:設(shè)置后能讓單選框默認(rèn)選中與“實際值”相同的一個選項,例如,下文中的例子,默認(rèn)會選中男。例如男和女的單選框代碼為:<s:radioname="sex"list="#{1:'男',0:'女'}"value="0"></s:radio>單選框例子的效果如圖1.2-2所示。圖1.2-2單選框標(biāo)簽其對應(yīng)的HTML代碼實際為:<inputtype="radio"name="sex"value="1"checked="checked"/>男<inputtype="radio"name="sex"value="0"/>女注意觀察,表達(dá)式#{1:'男',0:'女'}最終生成的HTML代碼,實際值(value屬性)分別為1和0,顯示值是男和女,默認(rèn)選中了“男”這一選項。使用復(fù)選框標(biāo)簽<s:checkboxlistname=“復(fù)選框名”list=“#{‘實際值’:’顯示值’,‘實際值’:’顯示值’,…}"value="0"></s:checkboxlist>說明:與html的inputtype=checkbox標(biāo)簽類似,常用OGNL表達(dá)式完成對多個選項的描述,具體使用方法請參考“單選框”處的說明。例如有五個選項的復(fù)選框:<s:checkboxlistname="love"list="{‘游泳’,’徒步’,’打乒乓’,’看書’,’其他’}">復(fù)選框例子的效果如圖1.2-3所示。圖1.2-3復(fù)選框標(biāo)簽使用下拉框標(biāo)簽<s:selectname=“下拉框名”list="#{’實際值’:’顯示值’,‘實際值’:’顯示值’,…}"value="0"></s:select>說明:與html的select標(biāo)簽類似,常用OGNL表達(dá)式完成對多個選項的描述,具體使用方法請參考“單選框”處的說明。例如有三個選項的下拉框:<s:selectlist="#{‘0’:’學(xué)生’,’1’:’教師’,’2’:’使用多行輸入框標(biāo)簽<s:textareaname=“多行輸入框名”rows=“高度”cols=“寬度"></s:textarea>說明:與html的textarea標(biāo)簽類似,例如3行高、30列寬的多行輸入框:<s:textareaname="note"rows="3"cols="30“></s:textarea>使用按鈕標(biāo)簽<s:submitvalue=“提交按鈕名"></s:submit><s:resetvalue=“重置按鈕名"></s:reset>說明:與html的inputtype=submit和inputtype=reset標(biāo)簽類似日期選擇標(biāo)簽<sx:datetimepickername="日期標(biāo)簽名"displayFormat="日期格式,如yyyy-MM-dd"label="標(biāo)簽標(biāo)題"></sx:datetimepicker>圖1.2-4日期選擇標(biāo)簽說明:圖1.2-4中,日期選擇標(biāo)簽的顯示是用struts2集成了的dojo框架(注:dojo是一個第三方j(luò)avascript函數(shù)庫,struts2集成了部分功能以豐富動態(tài)頁面表現(xiàn)力及交互性)的日期控件來實現(xiàn)的。但是該日期控件在struts22.1版本后就沒有集成在struts2的基本標(biāo)簽庫里,而是集成到了struts2-dojo-plugin-2.1.x.jar包里,所以在使用此控件標(biāo)簽前,必須先到導(dǎo)入struts2-dojo-plugin-2.1.x.jar包,并且在JSP頁面加入以下對應(yīng)的標(biāo)簽指令代碼<%@taglibprefix="sx"uri="/struts-dojo-tags"%>因為日期控件依賴了dojo相關(guān)的javascript函數(shù)庫,所以也需要在頁面中的<head></head>區(qū)域中加入<sx:head/>以引入dojo相關(guān)函數(shù)庫,同時指定其編碼集屬性extraLocales為utf-8,如下所示:<sx:headextraLocales="utf-8"/>同時在<sx:datetimepicker>標(biāo)簽中,加入lan
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年新能源電池合資成立研發(fā)中心合同3篇
- 二手車交易補(bǔ)充合同(2024定制版)一
- 2025年新型農(nóng)村水電施工及設(shè)施維護(hù)合同3篇
- 2025年度綠色環(huán)保型餐飲服務(wù)合同正規(guī)范本3篇
- 二零二五年度營業(yè)執(zhí)照辦理與租賃期房服務(wù)合同2篇
- 二零二五年酒店家具智能化改造與升級合同3篇
- 二零二五版泵車租賃與租賃期限及費(fèi)用調(diào)整合同3篇
- 二零二五版基站建設(shè)場地使用權(quán)及網(wǎng)絡(luò)建設(shè)合作協(xié)議3篇
- 2025年度餐飲行業(yè)員工職業(yè)培訓(xùn)與晉升合同3篇
- 二零二五年西餐廳連鎖加盟與股份合作經(jīng)營合同3篇
- 經(jīng)方治療腦梗塞的體會
- 新版DFMEA基礎(chǔ)知識解析與運(yùn)用-培訓(xùn)教材
- 制氮機(jī)操作安全規(guī)程
- 衡水市出租車駕駛員從業(yè)資格區(qū)域科目考試題庫(全真題庫)
- 護(hù)理安全用氧培訓(xùn)課件
- 《三國演義》中人物性格探析研究性課題報告
- 注冊電氣工程師公共基礎(chǔ)高數(shù)輔導(dǎo)課件
- 土方勞務(wù)分包合同中鐵十一局
- 乳腺導(dǎo)管原位癌
- 冷庫管道應(yīng)急預(yù)案
- 司法考試必背大全(涵蓋所有法律考點(diǎn))
評論
0/150
提交評論