欢迎来到天天文库
浏览记录
ID:40231689
大小:4.14 MB
页数:28页
时间:2019-07-27
《第4章 Struts2标签库》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第4章Struts2标签库了解Struts2标签库的组成了解值栈的概念掌握OGNL表达式语法掌握OGNL集合表达式掌握数据标签的使用掌握控制标签的使用了解主题和模板概念及使用掌握表单标签的使用掌握非表单标签的使用目标2Struts2标签库概述使用标签的优势:使用简单可维护性强复用性高标签库分类:3导入Struts2标签库在JSP页面中使用Struts2标签库中提供的标签,必须使用taglib指令导入Struts2标签库prefix属性指定标签的前缀,此处指定标签的前缀为“s”,即使用Struts2标签库
2、中的任一标签时,前面都应加上“s:”,例如“”uri属性指定标签库描述文件的路径,此处设为“/struts-tags”,与struts-tags.tld文件中的默认uri一致,使JSP页面具有更好的兼容性<%@taglibprefix="s"uri="/struts-tags"%>4OGNL与值栈对象图导航语言ObjectGraphNavigationLanguage,是Struts2框架默认的表达式语言值栈中的对象:临时对象模型对象action对象5OGNL语法根对象的属性直接
3、访问非根对象的属性使用“#”访问在Struts2框架中,ValueStack对象是OGNL的根对象,所以ValueStack中对象的属性可以直接访问访问其他对象,必须使用“#”parameters对象:用于访问HTTP请求参数。例如,#parameters.name相当于调用HttpServletRequest对象的getParameter("name")方法request对象:用于访问HttpServletRequest属性,例如,#request.name相当于调用getAttribute("nam
4、e")方法session对象:用于访问HttpSession对象,例如,#session.name相当于调用getAttribute("name")方法application对象:用于访问ServletContext对象,例如,#application.name相当于调用ServletContext的getAtrribute("name")方法attr对象:用于按照page-->request-->session-->application顺序访问其属性6OGNL集合表达式ListMapin:某个元素是
5、否在指定的集合对象中notin:某个元素是否不在指定的集合对象中?:获得所有符合逻辑的元素^:获得符合逻辑的第一个元素$:获得符合逻辑的最后一个元素{e1,e2,e3…}#{key1:value1,key2:value2,......}7数据标签数据标签主要用来提供各种数据访问功能标签名描述action该标签用来直接调用一个Action,根据executeResult参数,可以将该Action的处理结果包含到页面中bean该标签用来创建一个JavaBean对象date该标签用来格式化输出一个日期属性de
6、bug该标签用来生成一个调试链接,当点击该链接时,可以看到当前值栈中的内容i18n该标签用来指定国际化资源文件的baseNameinclude该标签用来包含其他的页面资源param该标签用来设置参数property该标签用来输出某个值,该值可以是值栈或ActionContext中的值push该标签用来将某个值放入值栈set该标签用来设置一个新的变量,并把新变量存储到特定的范围中text该标签用来输出国际化信息url该标签用来生成一个特定的URL8property标签property标签的作用是输出指定值
7、输出value属性指定的值,如果没有指定value属性,则默认输出ValueStack栈顶的值示例:4.D.1success.jsp属性名是否必须描述default否如果输出的属性值为null,则显示default属性指定的值escape否默认为true,即不解析HTML标签,如果设定为false则默认解析HTML标签value否指定需要输出的属性值,如果没有指定该属性,则默认输出ValueStack栈顶的值id否指定该元素的标识9param标签param标签主要用于为其他标签提供参数属性名是否必须描述
8、name否指定被设置参数的参数名value否指定被设置参数的参数值,该值为Object类型id否指定引用该元素的IDzhangsan10bean标签bean标签主要用于创建一个JavaBean的实例属性名是否必须描述name是该属性
此文档下载收益归作者所有