JAVA方向實訓---Struts2標簽庫 江西理工大學2011年暑假實訓沃特十八_第1頁
JAVA方向實訓---Struts2標簽庫 江西理工大學2011年暑假實訓沃特十八_第2頁
JAVA方向實訓---Struts2標簽庫 江西理工大學2011年暑假實訓沃特十八_第3頁
JAVA方向實訓---Struts2標簽庫 江西理工大學2011年暑假實訓沃特十八_第4頁
JAVA方向實訓---Struts2標簽庫 江西理工大學2011年暑假實訓沃特十八_第5頁
已閱讀5頁,還剩42頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、大連華天軟件有限公司大連華天軟件有限公司 版權所有版權所有-2011-2011江西理工大學暑期實訓江西理工大學暑期實訓江西理工實訓理論課程江西理工實訓理論課程 大連華天軟件有限公司大連華天軟件有限公司 版權所有版權所有OGNLOGNL與標簽庫與標簽庫(1)(1)微軟暑期實訓微軟暑期實訓2011目標目標 1 OGNL 2 Struts2標簽分類 3 控制標簽 (if, elseif, else, iterator, append, merge, generator, subset, sort) 4 數據標簽 (bean, param, date, debug, include, set, url

2、, push)微軟暑期實訓微軟暑期實訓2011 OGNLObject-Graph Navigation Language的縮寫,它是一種功能強大的表達式語言(Expression Language,簡稱為EL),通過它簡單一致的表達式語法,可以存取對象的任意屬性,調用對象的方法,遍歷整個對象的結構圖,實現字段類型轉化等功能。Struts2默認的表達式語言是OGNL微軟暑期實訓微軟暑期實訓2011OGNLOGNL的符號的符號-#-# # 訪問OGNL上下文和Action上下文,#相當于ActionContext.getContext() . 構造Map 用于過濾和投影(projecting)集合

3、 - ?所有匹配選擇邏輯的元素- 只提取符合選擇邏輯的第一個元素- $只提取符合選擇邏輯的最后一個元素 - 示例見第7頁微軟暑期實訓微軟暑期實訓2011名稱作用示例parameters 讀取請求參數request 讀取request中的屬性session 讀取session中的屬性application 讀取application中的屬性attrrequest session application順序訪問其屬性 微軟暑期實訓微軟暑期實訓2011 - 微軟暑期實訓微軟暑期實訓2011List list = new List list = new ArrayListArrayList();();

4、list.addlist.add(new Student(1, (new Student(1, 張三張三 , new Date();, new Date();list.addlist.add(new Student(2, (new Student(2, 李四李四 , new Date();, new Date();list.addlist.add(new Student(3, (new Student(3, 王八王八 , new Date();, new Date();pageContext.setAttributepageContext.setAttribute( (listlist, li

5、st);, list); 返回張三,王八 返回張三 返回王八微軟暑期實訓微軟暑期實訓2011微軟暑期實訓微軟暑期實訓2011OGNLOGNL的主要功能的主要功能 支持對象方法調用 - 調用保存在pageContext中的Student對象的doSomeThing() NN語法語法 從ValueStack的第N個位置開始取值 toptop關鍵字關鍵字 取出最頂端的對象 示例:- - 從ValueStack中的第0個位置開始取出最頂部的對象,返回為”阿拉伯聯合酋長國”微軟暑期實訓微軟暑期實訓2011StrutsStruts標簽分類標簽分類 11微軟暑期實訓微軟暑期實訓2011導入導入taglibt

6、aglib 微軟暑期實訓微軟暑期實訓2011控制標簽控制標簽 if elseif else iterator append merge generator subset sort微軟暑期實訓微軟暑期實訓2011條件標簽條件標簽 ififelseifelseifelseelse主要屬性: test : 測試條件示例- - - - 恭喜,您中了一等獎!- - - 恭喜,您中了二等獎!- - - 歡迎惠顧!- 微軟暑期實訓微軟暑期實訓2011迭代標簽迭代標簽 iteratoriterator 用于循環數組,集合和Map 屬性 value:數組,集合或Map var:當前元素 status:當前元素的

7、狀態- index,count,even,odd,first,last 示例微軟暑期實訓微軟暑期實訓2011 遍歷List- - - - 遍歷Map- - - - 微軟暑期實訓微軟暑期實訓2011集合合并標簽集合合并標簽 appendappend和和mergemerge 將多個集合合并成一個集合 屬性var 新集合的名稱 示例- - - - merge用法和append相同,結果的組織不一樣.微軟暑期實訓微軟暑期實訓2011字符串分割標簽字符串分割標簽 generatorgenerator 將一個字符串按照指定分隔符分割成一個字符串數組 屬性- separator: 分隔符- val(valu

8、e): 字符串- count:字符串數組中元素個數 示例- - - - 微軟暑期實訓微軟暑期實訓2011集合子集標簽集合子集標簽 subsetsubset 從集合中取出一個子集,注意:子集被放在值棧的頂部,subset標簽執行完后子集自動移除 屬性- source: 集合- start: 起始索引- count: 子集中元素個數 示例- - 微軟暑期實訓微軟暑期實訓2011排序標簽排序標簽 sortsort 根據定義的排序規則,對集合中的元素進行排序,排序后生成的新的集合放在值棧頂部,標簽結束后自動刪除. 屬性:- comparator: 實現Comparator的類- source: 集合

9、示例:- s:bean name= - - 微軟暑期實訓微軟暑期實訓2011數據標簽 set push bean date debug include url param property微軟暑期實訓微軟暑期實訓2011設置變量標簽設置變量標簽 setset 用于設置一個新變量,并將新變量放入指定的作用域中 屬性- Var: 新變量的引用- Value:值 示例- - 注:如果不指定,默認放在Stack Context中微軟暑期實訓微軟暑期實訓2011棧頂置值標簽棧頂置值標簽 pushpush 將某個值置于值棧的頂部,標簽結束后,將從值棧中移除. 屬性- value: 即值 示例- - 微軟暑

10、期實訓微軟暑期實訓2011javabeanjavabean創建標簽創建標簽 beanbean 用于創建javabean的實例,如果設置了var值,則存于Stack Context,否則,標簽結束后自動移除. 屬性- name: javabean類名(帶包)- var:名稱 示例- 1張三好2009-9-9- - 微軟暑期實訓微軟暑期實訓2011日期格式化標簽日期格式化標簽 datedate 格式化日期并輸出 屬性- name:日期- format:格式化字符串 示例- - 微軟暑期實訓微軟暑期實訓2011調試標簽調試標簽 debugdebug 用于當前環境下Value Stack和stack

11、context中保存的數據微軟暑期實訓微軟暑期實訓2011資源包含標簽資源包含標簽 includeinclude 用于將一個html,jsp或servlet包含到當前頁面中,使用param傳遞參數 屬性- value:包含頁面名稱 示例- 微軟暑期實訓微軟暑期實訓2011URLURL生成標簽生成標簽 urlurl 生成URL地址,可以通過param標簽傳遞請求參數,如果參數為中文,自動編碼 屬性- value:url值- action:action名稱,自動加上.action 示例- 中華人民共和國- - a href=鏈接- - 微軟暑期實訓微軟暑期實訓2011數據標出標簽數據標出標簽 pr

12、opertyproperty 用于輸出值棧,Stack Context中的數據 屬性- value:要輸出的值 如果輸出值棧中的值,不用# 如果輸出Stack Context中的值,要用# 如果省略value,表示取出值棧的棧頂對象輸出微軟暑期實訓微軟暑期實訓2011總結總結 OGNL是標簽的基礎,要理解OGNL的基本使用,在struts2中,OGNL必須和標簽緊密配合 控制標簽包含一組條件判斷標簽和一組集合遍歷和操作標簽 數據標簽包含一組數據訪問相關的標簽大連華天軟件有限公司大連華天軟件有限公司 版權所有版權所有StrutsStruts標簽庫標簽庫(2)UI(2)UI標簽與標簽與ajaxaj

13、ax標簽標簽微軟暑期實訓微軟暑期實訓2011目標目標 1 表單標簽 textfield password textarea select radio checkboxlist combobox datetimepicker 2 Ajax標簽(div, a, submit, tabbedpanel)微軟暑期實訓微軟暑期實訓2011 分類 輸入標簽textfield, password, textarea 選擇標簽radio, checkbox, checkboxlist, select, file, 輸入選擇標簽datetimepicker, combobox 其他標簽form, hide, s

14、ubmit, reset微軟暑期實訓微軟暑期實訓2011輸入標簽輸入標簽 textfieldtextfield, password, , password, textareatextarea 作用 textfield:文本框 password:密碼框 textarea:文本區 共同特征 向服務器傳送一個值 共同屬性 name:名稱,被服務器識別 label:標題 labelposition:標題位置 value:值微軟暑期實訓微軟暑期實訓2011選擇標簽選擇標簽 radio, radio, checkboxlistcheckboxlist, select, select 作用 radio:單選

15、按鈕 checkboxlist:復選框組 select:下拉列表框 共同屬性 name,value,label,labelposition:同上 list:提供選項數據,可以是List,Map等集合,集合元素可以是javabean對象 listKey:指定一個屬性作為實際值 listValue:指定一個屬性作為顯示值 注:如果有多個值傳送到服務器,使用數組或List接收微軟暑期實訓微軟暑期實訓2011選擇標簽選擇標簽 checkbox, filecheckbox, file 作用 checkbox:表示是否之意,服務器用boolean類型接收- 屬性label,value,name file:

16、文件選擇- 屬性label,value,name微軟暑期實訓微軟暑期實訓2011輸入選擇標簽輸入選擇標簽 datetimepickerdatetimepicker 作用 日期控件,用于輸入和選擇日期 注意 位于/struts-dojo-tags標簽庫- 導入 必須加入 顯示月份”十一月”,”十二月”,”時”,”分”時有亂碼,暫無解決方案 屬性 name value:設成%today表示默認為當前日期或時間 displayFormat:日期格式 type: 如果為date表示日期,為time表示時間微軟暑期實訓微軟暑期實訓2011輸入選擇標簽輸入選擇標簽 comboboxcombobox作用 文

17、本框和下拉列表框的組合- 文本框總是顯示下拉列表框的當前選擇值屬性 同select微軟暑期實訓微軟暑期實訓2011其他標簽其他標簽 form, hide, submit, resetform, hide, submit, reset 和普通標簽用法相同微軟暑期實訓微軟暑期實訓2011UIUI標簽示例標簽示例微軟暑期實訓微軟暑期實訓2011代碼截圖代碼截圖微軟暑期實訓微軟暑期實訓2011AjaxAjax標簽 ajax標簽通過一種更加簡單的方式使用ajax技術 主要標簽 div a submit ajax標簽定義在中,同時,必須添加語句.微軟暑期實訓微軟暑期實訓2011divdiv標簽標簽 通過ajax顯示從服務器獲取到的內容 屬性 href:處理ajax請求的URL地址 updateFreq:重新加載的頻率 executeScripts:為true表示執行href中的腳本 loadingText:加載內容時的提示信息 errorText:加載失敗時的提示信息 示例 微軟暑期實訓微軟暑期實訓2011a a標簽標簽 點

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論