188宝金博页面版

  • 图案背景
  • 纯色背景
视图
标记
批注
批注本地保存成功,开通会员云端永久保存 去开通
jpudnjdj58..

上传于:2012-04-07

粉丝量:2

该文档贡献者很忙,什么也没留下。


  • 相关
  • 目录
  • 笔记
  • 书签

188宝金博页面版:更多相关文档

  • EL表达式详解教程

    星级: 9 页

  • GEL文件详解

    星级: 3 页

  • axel选项详解

    星级: 2 页

  • EL表达式详解教程

    星级: 17 页

  • [转]EL表达式 (详解)

    星级: 9 页

  • 详解EL表达式

    星级: 6 页

  • RHEL升级详解

    星级: 6 页

  • EL表达式详解

    星级: 7 页

  • GEL文件详解

    星级: 2 页

  • excel函数详解

    星级: 89 页

  • EL表达式详解

    星级: 8 页

暂无目录

点击鼠标右键菜单,创建目录

暂无笔记

选择文本,点击鼠标右键菜单,添加笔记

暂无书签

在左侧文档中,点击鼠标右键,添加书签

188宝金博页面版: EL详解

下载积分: 1200

内容提示: EL表达式总是用大括号括起, 而且前面有一个美元符($) 前缀: ${expression} 。 表示式中第一个命名变量要么式一个隐式对象, 要么是某个作用域(页面作用域、 请求作用域、 会话作用域或应用作用 域) 中的一个属性。 点 号操作符允许你使用一个Map键或一个bean性质名来访问值, 例如, 使用${foo. bar} 可以得到bar的值, 在此, bar是 Map foo的Map键名, 或者是bean foo的一个性质。 放在点号操作符右边的东西必须遵循Java的标识符命名规则! (换句 话说, 必须以一个字母、 下划线或美元符开头, 第一个字符后面可以有 数字, 但不能有其他字符) 。 点号右边只能放合法的Java...

文档格式:TXT | 页数:2 | 浏览次数:15 | 上传日期:2012-04-07 01:58:03 | 文档星级:
EL表达式总是用大括号括起, 而且前面有一个美元符($) 前缀: ${expression} 。 表示式中第一个命名变量要么式一个隐式对象, 要么是某个作用域(页面作用域、 请求作用域、 会话作用域或应用作用 域) 中的一个属性。 点 号操作符允许你使用一个Map键或一个bean性质名来访问值, 例如, 使用${foo. bar} 可以得到bar的值, 在此, bar是 Map foo的Map键名, 或者是bean foo的一个性质。 放在点号操作符右边的东西必须遵循Java的标识符命名规则! (换句 话说, 必须以一个字母、 下划线或美元符开头, 第一个字符后面可以有 数字, 但不能有其他字符) 。 点号右边只能放合法的Java标识符。 例如, ${foo. 1} 键就不可以。 [] 操作符比点号功能更强大, 因为利用[] 可以访问数组和List, 可以把包含命名变量的表达式放在中括号里, 而且可以 做任意层次的嵌套, 只要你受得了 。 例如, 如果musicList是一个ArrayList, 可以用${musicList[0] } 或${musicList[“0” ] } 来访问列表的第一个值。 EL并 不关心列表索引加不加引号。 如果中括号里的内容没有用引号引起来, 容器就会进行计算。 如果确实放在引号里, 而且不是一个数组或List的索引, 容器就会把它看作是性质或键的直接命名。 除 了 一个EL隐式对象(PageContext) 外, 其他EL隐式对象都是Map。 从这些隐式对象可以得到任意4个作用域中的属 性、 请求参数值、 首部值、 cookie值和上下文初始化参数。 非映射的隐式对象是pageContext, 它是PageContext对象的 一个引用。 不 要把隐式EL作用域对象(属性的Map) 与属性所绑定的对象混为一谈。 换句话说, 不要把requestScope隐式对象与具 体的JSP隐式对象 request混淆。 访问请求对象只有一条路, 这就是通过pageContext隐式对象来访问(不过, 想从请求 得到的一些东西通过其他EL隐式对象也可 以得到, 包括param/paramValues、 header/headerValues和cookie) 。 EL允许你调用一个普通Java类中的公共静态方法。 函数名不一定与具体的方法名相匹配! 例如, ${foo: roolIt() } 并不意 味着包含函数的类中肯定有一个名为roolIt() 的方法。 使 用一个TLD将函数名(例如roolIt() ) 映射到一个具体的静态方法。 使用<function>元素声明一个函数, 包括函数 的 <name>(roolIt() ) 、 完全限定类<function-class>以及<function- signature>, 其中包括返回类型以及方法名和参数 表。 要在JSP中使用函数, 必须使用taglib指令声明一个命名空间。 在taglib指令中放一个prefix属性, 告诉容器你要的函数 在哪个TLD里能找到。 例如: <%@ taglib prefix="mine" uri="/WEB-INF/foo. tld" %> 基本语法 一、 EL简介 1. 语法结构 ${expression} 2. [] 与. 运算符 EL 提供. 和[] 两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符, 如. 或?等并非字母或数字的符号, 就一定要使用 [] 。 例如: ${user. My-Name} 应当改为${user["My-Name"] } 如果要动态取值时, 就可以用[] 来做, 而. 无法做到动态取值。 例如: ${sessionScope. user[data] } 中data 是一个变量 3. 变量EL存取变量数据的方法很简单, 例如: ${username} 。 它的意思是取出某一范围中名称为username的变量。 因为我们并没有指定哪一个范围的username, 所以它会依序从Page、 Request、 Session、 Application范围查找。 假如途中找到username, 就直接回传, 不再继续找下去, 但是假如全部的范围都没有找到时, 就回传null。 属性范围在EL中的名称 Page PageScope Request RequestScope Session SessionScope Application ApplicationScope 二、 EL隐含对象 1. 与范围有关的隐含对象 与范围有关的EL 隐含对象包含以下四个: pageScope、 requestScope、 sessionScope 和applicationScope; 它们基本上就和JSP的pageContext、 request、 session和application一样; 在EL中, 这四个隐含对象只能用来取得范围属性值, 即getAttribute(String name) , 却不能取得其他相关信息。 例如: 我们要取得session中储存一个属性username的值, 可以利用下列方法: session. getAttribute("username") 取得username的值, 在EL中则使用下列方法 ${sessionScope. username} 2. 与输入有关的隐含对象 与输入有关的隐含对象有两个: param和paramValues, 它们是EL中比较特别的隐含对象。 例如我们要取得用户的请求参数时, 可以利用下列方法: request. getParameter(String name) request. getParameterValues(String name) 在EL中则可以使用param和paramValues两者来取得数据。 ${param. name} ${paramValues. name} 3. 其他隐含对象 cookie JSTL并没有提供设定cookie的动作, 例: 要取得cookie中有一个设定名称为userCountry的值, 可以使用${cookie. userCountry} 来取得它。 header和headerValues header 储存用户浏览器和服务端用来沟通的数据 例: 要取得用户浏览器的版本, 可以使用${header["User-Agent"] } 。 另外在鲜少机会下, 有可能同一标头名称拥有不同的值, 此时必须改为使用headerValues 来取得这些值。 initParam initParam取得设定web站点的环境参数(Context) 第 1 页

阅读了该文档的用户还阅读了这些文档

188宝金博页面版:关注我们

  • 新浪微博

关注188宝金博页面版公众号

188宝金博页面版
阅读
APP
阅读
返回
顶部
188宝金博页面版官网登录在线平台入口(2026已更新)—江苏协昌电子科技股份有限公司