JSP2.0中使用EL表达式语言
EL(表达式语言)是一种数据访问语言,可以方便地访问和处理应用程序数据,而无需使用scriptlet或者请求时(request-time)表达式的值。(不需要使用< % %>来获得数据,EL使JSP页面编写人员摆脱了java语言,使用户即使不懂JAVA也可以轻松编写JSP程序.
  在JSP2.0之前,网页作者只能使用表达式< %= aName %>访问系统的值,比如:
  而访问JavaBeans属性,可以使用:${untry}
  TomcatEL扩展表达式的支持和配置:
  tomcat5.0默认支持EL,同时用户可以在l文件中对整个web应用程序进行设置或者在每个页面中单独设置page指令来控制TOMCAT是否对EL的支持。
  ----------------------------
  JSP2.0EL扩展表达式语言的设置
  有了JSP2.0,就可以使用EL扩展表达式了。对于一个单个JSP页面,你可以使用定义page指令来设置jsp页面是否支持EL。默认是支持EL(如果要页面不支持EL,请设置为isELIgnored=true;
  JSP2.0中表达式运算符号:
  EL表达式运算符包括算数运算符(+-*/),关系运算符(>< )和逻辑运算符(&& || !),还有empty 判断值是否为空,同时EL能够对字符串,数字等各种类型的数据之间的自动转换,使EL 兼容了JAVASCRIPT等脚本语言的优点,摆脱了JAVA语言严格的数据类型限制,使用起来简单,只需要几分钟就可以轻松掌握(对于不懂java的网页编写人员实在是一件好事)
  ----------------------------
  JSP2.0中各种运算符运算实例
  以下是EL运算符列表,其中empty可以检查某个值是否为空
  运算符 说明
  +
  -
  *
  /div
  % mod (求余)
  == = 等于
  != != 不等于
  < lt 小于
  >gt 大于
  < =le 小于等于
  >=ge 大于等于
  && and 逻辑与
  || or 逻辑或
  ! not 逻辑非
  empty 检查是否为空值
  a ? b : c 条件运算符
  ----------------------------
  EL表达式使用简单,在网页中"${}"表示是EL表达式。${1+1} 显示为 2
  ----------------------------
  JSP2.0EL算术表达式 运算结果
  内置的11个隐含对象:
  为方便的获得WEB应用程序的相关数据,EL表达式语言定义了一些隐含对象。隐含对象共有11个对象,(JSP中具有9个隐含对象,ELJSP中具有更多的隐含对象,这样ELJSP更方便的获取数据) 使用这些对象可以很方便的访问Web 程序数据。
  隐含对象包括Session(获得当前web程序的Session),cookie(获得WEB程序的Cookie),header,headerValues(获得用户的Http数据访问头部信息),ParamParamValues(获得用户提交数据参数)等。
  使用${隐含对象名称["元素"]} 就可以获得这个值了,例如${header("host")} 可以显示http头部中host的值,${param("username")},可以获得显示用户表单提交的用户. 使用${empty(param("username")} 可以判断用户提交表单是否为空等。(这样比jsp1.2中使用Paramter("username") 要简化和方便很多了)
  ----------------------------
  隐含对象及隐含对象访问实例
  ELel表达式获取值 表达式定义了11个隐含对象,使用这11个对象可以很方便的读取到session,cookie,HttpHeader,用户提交表单(param)
  隐含对象 内容
  applicationScope 应用程序范围内的scoped变量组成的集合
  cookie 所有cookie组成的集合
  header HTTP请求头部,字符串
  headerValues HTTP请求头部,字符串集合
  initParam 全部应用程序参数名组成的集合
  pageContext 当前页面的javax.servlet.jsp.PageContext对象
  pageScope 页面范围内所有对象的集合
  param 所有请求参数字符串组成的集合
  paramValues 所有作为字符串集合的请求参数
  requestScope 所有请求范围的对象的集合
  sessionScope 所有会话范围的对象的集合
  下面是获取HTTP访问头部数据和用户提交数据的示例
  EL表达式 运算结果
  ${header["host"]} 这里得到HTTP连接头部的host
  ${header["accept"]} 这里获得HTTP头部的accept
  ${header["user-agent"]} 这里获得HTTP头部的user-agent
  ----------------------------
  访问应用程序数据
  除了可以方便的访问内置的隐含对象外,EL还可以方便的到应用程序数据,访问应用程序数据使用两种方式 . (点号运算符)访问对象的属性,也可以使用[] 来访问数组元素(实际上EL中访问隐含对象数据也是使用这两种方式的)
  表达式${data}表示名为datascoped变量。可以使用点号(.)或方括号([])运算符从集合中检索属性值:(两种数据访问方式演示)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。