EL--1

来源:互联网 发布:mysql exist 编辑:程序博客网 时间:2024/06/05 12:01

 

          关于EL表达式的一些说明:           一、EL表达式可以直接使用在模板文本中,也可以用于声明为接受请求时的动作属性值中(这包括标准动作和定制动作)           二、EL表达式的隐式变量:           pageScope/requestScope/SessionScope/applicatonScope/param/paramValues/header/headerValues/cookie/intParam/pageContext           三、EL中的表达式           .    []   ? :   +-*/    == !=  <=  >  >=  &&  ||  ! empty func(args)   

 

 

 

 

 

  说明:   1、EL表达如果不指明范围,则从page、request、session、application范围内逐一查找。   2、pageScope requestScope sessionScope applicationScope都是EL表达的隐式变量,相当于这个作用域变量的一个Map集合。   3、EL表达式还有一个特别有用的隐式变量--pageContext,是javax.servlet.jsp.pageContext类的一个实例,提供了对各种请求数据的访问。   


用EL表达式输出的方法:${name1}第二种方法:${pageScope.name1}
用EL表达式输出的方法:${name2}第二种方法:${requestScope.name2}
用EL表达式输出的方法:${name3}第二种方法:${sessionScope.name3}
用EL表达式输出的方法:${name4}第二种方法:${applicationScope.name4}
用pageContext的方法输出


EL表达式也可以取Bean/Map/List/数组,下面是例子


使用EL表达式取Map和List的值
${pageScope.map.key1} 也可以省略pageScope
${map.key1}
list[0]: ${list[0]}

  说明: 1)取Map/Bean中的值可以使用"."操作符、          2)List和数组元素可以使用数组存取操作符[]。          3)数组存取操作符还可以访问bean属性和Map项。当性质由一个子表达式,或者性质是一个保留字,或者性质名中包含有          用于操作符(例如点号)时,也必须使用数组存取操作符。    
  下面这条语句使用了声明元素,它由请求此页面的所有请求所共享。   有时间会用这种方面做访问这个页面的计数器,但是这并不是十分安全的方法。