EL表达式

6 篇文章 0 订阅
1 篇文章 0 订阅

EL表达式

1.概念:Expression Language 表达式语言
2.作用:简化和替换jsp页面java代码的编写
3.语法:${表达式},如${3>4}返回一个逻辑值
4.注意:jsp默认支持EL表达式的,表达式原样展示。

jsp页面停用EL表达式

1.把isELIgnored改成ture,该页面所有的EL表达式都会原样输出。
2.原样输出单个El表达式的话,在EL表达式前面加\即可,如\${3>4}。

EL表达式使用方式:

	## 运算
		1.算数运算符:+,-,*,/(div),%(mod)
		2.比较运算符:<,>,=,<=,>=,!=,==
		3.逻辑运算符: &&(and),||(or),!(not)
		4.空运算符:empty
			判断字符串,集合,数组的对象是否为null并且长度是否为0

	例:${3 + 4},${3 / 4},${3 div 4},${3%4},${3 mod 4},${3==4},${3 >4 && 4>5},${3 >4 and 4>5},
	## 获取值
		1.el表达式只能从域对象中获取值
		2.语法:
			1.${域名称.键名}:从指定域中获取对应键的值

域名称:
1.pageScope指当前页面如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。
2.requestScope指从http请求到服务器处理结束,返回响应的整个过程。在这个过程中使用forward方式跳转多个jsp。在这些页面里你都可以使用这个变量。
3.SessionScope 有效范围当前会话,从浏览器打开到浏览器关闭这个过程。
4.applicationScope的范围在服务器一开始执行服务,到服务器关闭为止。它的范围最大,生存周期最长。

举例:在request域中存储了name=”zhangsan”,或者name值得EL表达式为:${requestScope.name},如果没有拿到数据,则显示空字符串。不会显示null
2.${键名},省略域名称,依次从最好的域中去查找,是否存在对应的键名,直到找到为止。

获取对象、List集合、Map集合的值
1.获取对象的值:
${域名称.键名.属性名}
本质上会去调用对象的getter方法
2. List集合:${域名称.键名[索引]}
例:

List list = new ArrayList();
		List.add(“aaa”);
		List.add(“bbb”);
		Request.setAttribute(“list”,list);//添加list集合到Request域中

	

		 ${list}
		 ${list[0]}
		 ${list[1]}
		 ${list[10]}		//下标越界,不会报错,显示一个空的字符串
  1. Map集合:${域名称.键名.key名称}
    例:

       Map map = new Hashmap();
       map.put(“sname”,李四“”);
       map.put(“gender”,“男”);
       request.setAttribute(“map”,map);
    
       ${map}
       ${map.gender}
       ${map[“gender”]}
    

隐式对象

El表达式中有11个隐式对象
PageContext获取jsp其他八个内置对象

${pageContext.request}

Jsp页面动态获取虚拟目录:

${pageContext.request.contextPath}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值