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

提交评论