javawebel表达式语言详解Word下载.docx

上传人:b****6 文档编号:15993348 上传时间:2022-11-17 格式:DOCX 页数:12 大小:27.67KB
下载 相关 举报
javawebel表达式语言详解Word下载.docx_第1页
第1页 / 共12页
javawebel表达式语言详解Word下载.docx_第2页
第2页 / 共12页
javawebel表达式语言详解Word下载.docx_第3页
第3页 / 共12页
javawebel表达式语言详解Word下载.docx_第4页
第4页 / 共12页
javawebel表达式语言详解Word下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

javawebel表达式语言详解Word下载.docx

《javawebel表达式语言详解Word下载.docx》由会员分享,可在线阅读,更多相关《javawebel表达式语言详解Word下载.docx(12页珍藏版)》请在冰豆网上搜索。

javawebel表达式语言详解Word下载.docx

2. 

3. 

out.println(session.getAttribute(“username〞).toString());

4. 

5.}%>

而是用EL那么只需要下面的根据代码即可实现:

${username}

通过上面的例子我们可以知道,EL表达式的语法非常简单,它以〞${〞开头,以〞}〞完毕,中间为合法的表达式,详细的语法格式为:

${expression}

expression用于指定要输出的内容,可以使字符串,也可以是由EL运算符组成的表达式。

例如在EL表达式中要输出一个字符串,可以将此字符串放在一对单引号或双引号内:

${‘我叫小武灵灵’} 

或${“我叫小武灵灵〞}

EL有以下几个特点:

∙ 

EL可以与JSTL结合使用,也可以与JavaScript语句结合使用;

∙EL中会自动进展类型转换。

假设想通过EL输入两个字符串型数值的和,可以直接通过〞+〞号进展连接,如${num1+num2};

EL不仅可以访问一般变量,还可以访问JavaBean中的属性以及嵌套属性和集合对象;

∙在EL中可以获得命名空间(PageContext对象,它是页面中所有其他内置对象的最大范围的集成对象,通过它可以访问其他内置对象);

∙在使用EL进展除法运算时,假设除数为0,那么返回无穷大Infinity,而不是错误;

∙在EL中可以访问JSP的作用域(request、session、application以及page);

∙扩展函数可以与Java类的静态方法进展映射。

2、与低版本的环境兼容——禁用EL

目前只要安装的Web效劳器可以支持Servlet2.4/JSP2.0,就可以在JSP页面中直接使用EL。

由于在JSP2.0以前版本中没有EL,所以JSP为了和以前的标准兼容,还提供了禁用EL的方法。

有以下三种方法:

1)、使用斜杠〞\〞

只需要在EL的起始标记“$〞前加上〞\〞即可;

2)、使用page指令

使用JSP的page指令也可以禁用EL表达式,语法格式如下;

<

%@pageisELIgnored=〞布尔值〞%>

true为禁用EL

3)、在web.xml文件中配置<

el-ignored>

元素

[html] 

jsp-config>

<

jsp-property-group>

5. 

url-pattern>

*.jsp<

/url-pattern>

6. 

7. 

true<

/el-ignored>

8. 

9. 

/jsp-property-group>

10. 

11.<

/jsp-config>

3、保存的关键字

EL中保存的关键字如下,在为变量命名时,应该防止使用这些关键字:

and

eq

gt

instanceof

div

or

le

false

empty

not

Lt

ge

二、EL的运算符使用

EL的运算符在按照从左向右的计算原那么下,优先级如下:

1、通过EL访问数据

通过EL提供的〞[]〞和〞.〞运算符可以访问数据。

通常情况下这两个运算符是等价的,可以互相代替。

但也不是所有情况下都可以互相代替,例如当对象的属性名中包含一些特殊的符号(-或.)时,就只能使用[]来访问对喜欢那个的属性。

例如${userInfo[user-id]}是正确的,而${userInfo.user-name}是错误的。

下面给出通过这两运算符访问数据的例子:

1)、获取数组元素(只能使用[],不能用.)

String[] 

str 

{"

一号"

 

"

二号"

三号"

四号"

五号"

};

request.setAttribute("

user"

str);

7.%>

9.<

11. 

str1 

=(String[])request.getAttribute("

);

12. 

13. 

for(int 

i=0;

;

i++){ 

14. 

15. 

rt"

i);

16. 

17.%>

18. 

19. 

${rt}:

${user[rt] 

}<

br>

20. 

21.<

}%>

2)、List集合元素的获取(只能使用[],不能用.)

List<

String>

list 

newArrayList<

();

list.add("

session.setAttribute("

list);

13.%>

15.<

17. 

list1 

=(List<

)session.getAttribute("

() 

21. 

22. 

23.%>

24. 

25. 

26. 

27.<

2、在EL中进展算术运算

运算符

功能

例如

结果

+

${1+1}

2

-

${1-1}

*

${2*2}

4

/或div

${2/1}或${2div1}

${2/0}或${2div0}

Infinity

%或 

mod

求余

${3%2}或${3mod2}

1

${3%0}或${3mod0}

异常:

java.lang.ArithmeticException:

/byzero

3、在EL中判断对象是否为空

通过empty运算符实现,用来确定一个对象或比那辆是否为null或空,格式如下:

${emptyexpression}

例如:

%request.setAttribute("

%>

user1"

null);

user2"

2);

${emptyuser} 

//返回值为true 

${emptyuser1} 

${emptyuser2} 

//返回值为false 

4、在EL中进展逻辑关系运算

在EL中,通过逻辑运算符和关系运算符可以实现逻辑关系运算。

其使用方法都差不多,下面给出一个例子:

userName"

"

小武"

pwd"

123456"

9.userName= 

${userName 

11.pwd= 

${pwd 

13.\${userName!

and 

(pwd 

== 

asd"

)} 

15.${userName!

)}<

17.\${userName== 

pwd 

19.${userName== 

5、在EL中进展条件运算

在EL中进展条件运算,唯一的优点在于其非常简单方便,和Java语言中的用法完全一致,其语法格式如下:

${条件表达式?

表达式1 

表达式2}

${1==1?

“对〞:

“错“}

三、EL的隐含对象

为了可以获得Web应用程序中的相关数据,EL提供了11个隐含对象,这些对象类似于JSP的内置对象,也是直接通过对象名进展操作。

1、页面上下文对象

pageContext用于访问JSP内置对象和servletContext。

在获取到这些内置对象后,就可以获取器属性值。

这些属性与对象的gexxx()方法相对象,在使用时,去掉方法名中的get,并将首字母改为小写即可。

下面介绍如何应用页面上下文对象访问你JSP的内置对象和servletContext对象。

1)、访问request对象——${pageContext.request}

获取到request对象后,就可以通过该对象获取与客户端相关的信息。

例如要访问ge

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1