【17】EL表达式

EL表达式

全称Expression Language,用来替代JSP的脚本表达式向浏览器输出数据和执行一些基本的运算。

一、JSP最佳实践

不出现一行java代码,因为java代码回使得整个页面结构非常混乱和难以维护。

  • Servlet:负责产生数据与接收用户的请求数据;
  • Jsp:负责显示数据;
  • EL:输出数据

二、EL表达式格式

  • ${标识符},相当于:
<%=[ pageContext|request|session|application].getAttribute(属性名) %>
  • 如果是${“xxx”},将会原样输入xxx。

三、查找原理

底层利用了pageContext.findAttribute(属性值)可以从jsp中的四大域中搜索对象,找到则返回该对象,找不到则返回空字符串。

四、获取对象的属性

  • 格式:属性.对象属性
  • 注意:EL表达式判断对象是否有属性,完全是判断是否有对应的get方法,而无论其是否定义了成员变量。

四、内置对象

  • 指可直接使用的对象
  • 分别是:pageContext、pageScope、requestScope、sessionScope、applicationScope
  • 获取request对象再获取到当前工程名
${pageContext.request.contextPath}

五、运算符

1.获取属性

提供”.”和”[]”两种方式获取属性;

${user.name}
${user["name"]}

2.算术运算符

功能 运算符
+
-
*
/或div
取余 %或mod

3.关系运算符

功能 运算符
等于 ==或eq
不等于 !=或ne
小于 <或lt
小于等于 <=或le
大于
和gt
大于等于
=或ge

4.逻辑运算符

功能 运算符
\&\&或and
||或or
!或not

5.empty运算符

检查对象是否为null或”“

${empty user}

6.二元表达式

${user!=null?user.name:""}//注意大括号

你可能感兴趣的:(jsp,servlet,EL,javaweb)