EL表达式

EL:Expression Language

可以替代JSP页面中的JAVA代码

传统的在 JSP中用Java代码显示数据的弊端:

类型转换      需要处理null    代码参杂(html套Java代码,很乱)

用EL来解决

例如:jsp中:

Student student = (Student)request.getAttribute("student");

out.print(student);

out.print(student.getSno());

out.print(student.getSname());

out.print(student.getAddress());

el:

${requestScope.student}<br/>

${requestScope.student.sno}<br/>

${requestScope.student.sname}<br/>

${requestScope.student.address}<br/>

${域对象.域对象中的属性.属性}

el操作符:

.操作符示例:

${requestScope.student.address}<br/>

[]操作符示例:

${requestScope.student["address"]}<br/>

点操作符 .  --使用方便

中括号操作符[]  --功能强大:

可以包含特殊字符(.  、-)   比如元素名称叫my-name,${requestScop.student.my-name}<br/>就无法成功

可以获取变量值  ${requestScop.student[address]}<br/> address没加引号,说明是变量

可以访问数组

${requestScope.hobbies[0]}<br/>//访问数组第0给元素

${requestScope.hobbies.0}<br/>//这就不行了
可以访问map属性

示例:

Map<String,Object>map = new HashMap<>();

map.put("cn","中国");

map.put("us","美国");

request.setAttribute("map,map");

 

${requestScope.map.cn}

 

el中的>= >  || &&这些符号也可以写字母表示

例如:|| :or

empty运算符:判断一个值null,不存在

${empty requestScope[hobbies]}<br/>

如果hobbies这个东西不存在,empty就是true

如果hobbies是null,empty也为true

el表达式的隐式对象(不需要new就能使用的对象,因为jsp底层new过了)

1.作用域访问对象(EL域对象):pageScope requestScope sessionScope applicationScope

如果不指定域对象,则默认会根据 从小到大的顺序 依次取值

例如:现在sessionScope里面有一个值,但你没指定在哪个里面,只写了变量名sessionhhh,他就先在page...里面找,找不到就在request里面找,找不到就在session。。。里面找

2.参数访问对象:获取表单数据(request.getParameter(),request.getParameterValues())

                                                           ${param}                       ${paramValues}

3.JSP隐式对象:pageContext

在 jsp中通过pageContext获取其他的隐式对象,el中要使用jsp隐式对象,就可以通过pageContext间接获取

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值