JSP-Expression Language
Posted Vodka~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSP-Expression Language相关的知识,希望对你有一定的参考价值。
1.EL 是为了使JSP写起来更简洁方便,借鉴其他语言,语法结构: ${expression}
2.EL表达式一般操作的都是jsp四大域对象中的数据,不能操作局部变量。当需要从某个特定的域对象中查找数据时,可以使用四个域对象对应的空间对象,分别是: pageScope, requestScope, sessionScope, applicationScope。默认的查找方式从小范围到大范围,找到即可,如果所有域对象都查找完了都仍未找到相应数据,则返回空字符串""。
例子: ${pageScope.Uname} ${sessionScope.Password} ${applicationScope.Age}
3.EL表达式的使用:
-获取数据:
设置域对象中的数据
-获取域对象的值: ${TagName}
<%
pageContext.setAttribute("Uname","李四"); //page作用域
request.setAttribute("Account","123456"); //request作用域
session.setAttribute("Password","888888"); //session作用域
application.setAttribute("Age","100"); //application作用域
%>
4.获取数据:
<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<html>
<head><title>获取数据</title></head>
<body>
<%--
1. 获取List中指定下标的数据: ${list.[index]}
2. 获取集合的长度: ${list.size()}
3. 获取Map中的指定值: ${mag["key"} 或 ${map.key}
4. 获取javaBean对象(该对象要有get()方法): ${User} //获取对象
${User.Account} //获取对象的某个属性
5. empty: 判断域对象是否为空,空则返回true,反之返回false
- ${empty 限域变量名} 或 ${!empty 限域变量名}
-如果域对象是字符串: 不存在的域对象,空字符串和null的结果都是true
-如果域对象是List: 不存在的域对象,没有赋值的List(长度为零的)和null的结果都是true
-如果域对象是Map: 不存在的域对象,没有赋值的Map和null的结果都是true
-如果域对象是JavaBean: 空对象是false(因为对象的引用已经存在),null的结果是true
6. 比较两个值是否相等:返回true或false
${ a == b } 或 ${ a eq b }
7. 比较大小:
大于: > ;
小于:< ;
大于等于: >= ;
小于于等于: <= ;
${ a > b || b < c } , $ { b == c && a == d }
-%>
<%
//用户列表
List<String> Userlist = new ArrayList<>();
Userlist.add("Vodka");
Userlist.add("SuSan");
Userlist.add("JiangHua");
Userlist.add("LiHao");
//账号,密码列表
Map AP = new HashMap();
AP.put("123",789);
AP.put("456",444);
AP.put("986",3212);
AP.put("354",012301);
//存进request域对象
request.setAttribute("AP",AP);
request.setAttribute("Userlist",Userlist);
%>
</body>
</html>
以上是关于JSP-Expression Language的主要内容,如果未能解决你的问题,请参考以下文章
使用Auto Layout中的VFL(Visual format language)--代码实现自动布局转
使用Auto Layout中的VFL(Visual format language)--代码实现自动布局