博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
el表达式
阅读量:2338 次
发布时间:2019-05-10

本文共 2293 字,大约阅读时间需要 7 分钟。

EL表达式

语法:${key}  key代表的是存在域对象中的键

el表达式一般操作的是域对象或字面量,不能操作变量。

取值范围:从小范围开始找,找到即止,如果都未找到,返回空字符串。 page、request、session、application
如果想要获取指定域范围中的值,使用pageScope、requestScope、sessionScope、applicatonScope

注:获取JavaBean中的属性时,属性需要提供get方法

EL表达式取值

获取指定名称的域对象:${uname }
获取session作用域的值:${sessionScope.uname }
获取JavaBean对象:${myUser }
获取JavaBean对象的属性:${myUser.userName } ----- ${myUser.getUserName() }
获取普通变量名(取不到):${a }
获取字面量的值:${1 }

EL使用字符串方法

获取字符串中是指定字符的下标:${uname.indexOf("a") }
字符串截取:${uname.substring(0,2) }

EL表达式判断为空 ${empty 域变量 }

判断空字符串:${empty str1 }
判断null:${empty str2 }
判断字符串:${empty str3 }
判断字符串:${str3 != null && str3 != "" }
<%//集合 List
list1 = new ArrayList<>(); list1.add("aaa"); list1.add("bbb"); list1.add("ccc"); List
list2 = new ArrayList<>(); List
list3 = null; request.setAttribute("list1", list1); request.setAttribute("list2", list2); request.setAttribute("list3", list3); List
userList = new ArrayList<>(); userList.add(user); request.setAttribute("userList", userList);%>

EL操作集合

判断集合不为空:${!empty list1 }
判断集合为空:${empty list1 } -- ${empty list2 } -- ${empty list3 }
获取集合的值:${list1[0] }
获取集合中对象的属性:${userList[0].userName }
获取集合的长度:${userList.size() }
<% Map
map = new HashMap<>(); map.put("uname","zhansgan"); map.put("uage",18); map.put("usex",true); request.setAttribute("map", map);%>

EL操作Map

判断map是否为空:${empty map }
获取map对象:${map }
获取map中指定的key对应的value:${map.uname } -- ${map["uage"] }<% request.setAttribute("num1", 10); request.setAttribute("num2", 2); request.setAttribute("aa", "aaa"); request.setAttribute("ab", "aaa"); request.setAttribute("ac", "bbb");%>

EL运算

加法:${num1 + num2 }
减法:${num1 - num2 }
乘法:${num1 * num2 }
除法:${num1 / num2 } -- ${num1 div num2 }
大小比较:${num1 > num2 } -- ${num1 >10 } --- ${(num1+num2) <= 10 }
等值比较:${aa == ab } -- ${aa eq ac }
${(num1+num2) > 10 && aa == ab }
${(num1+num2) > 10 || aa == ab }

通过pageContext对象设置指定域范围的值:

pageContext.setAttribute("userName", "Lisa", PageContext.REQUEST_SCOPE);String userName = (String) pageContext.getAttribute("userName", PageContext.REQUEST_SCOPE);System.out.println(userName);

转载地址:http://kbgpb.baihongyu.com/

你可能感兴趣的文章
Redis缓存穿透、缓存雪崩、redis并发问题分析
查看>>
Redis持久化的两种方式
查看>>
判断一个数组,是否可以分成两个数组之和相等的数组
查看>>
背包问题
查看>>
结构体变量之间的比较和赋值原理
查看>>
C++ const修饰函数、函数参数、函数返回值
查看>>
将单链表的每k个节点之间逆序
查看>>
删除链表中重复的节点——重复节点不保留
查看>>
2018腾讯校招编程题——最重要的城市
查看>>
删除链表中重复的节点——重复节点保留一个
查看>>
实战c++中的vector系列--正确释放vector的内存(clear(), swap(), shrink_to_fit()).md
查看>>
链表排序.md
查看>>
进程与线程的区别与联系、进程与线程的通信方式
查看>>
C++与C的区别
查看>>
产生死锁的必要条件及处理方法
查看>>
TCP和UDP的区别
查看>>
TCP状态中 time_wait 的作用
查看>>
事务具有四个特性
查看>>
树的先序、中序、后序和层次遍历-C++实现
查看>>
static和const关键字的作用
查看>>