总结:EL操作的是作用域

<body>
<%
Users users = new Users("lisi","lisi123","lisi@lisi.com");
Address address = new Address("四川","成都","武侯区");
users.setAddress(address);
Users users1 = new Users("lisi1","lisi123","lisi@lisi.com");
Address address1 = new Address("四川1","成都1","武侯区1");
users1.setAddress(address1);
Users users2 = new Users("lisi2","lisi123","lisi@lisi.com");
Address address2 = new Address("四川2","成都2","武侯区2");
users2.setAddress(address2);
Users users3 = new Users("lisi3","lisi123","lisi@lisi.com");
Address address3 = new Address("四川3","成都3","武侯区3");
users3.setAddress(address3);

String prop = "city";

pageContext.setAttribute("u", users);
request.setAttribute("u", users1);
//session.setAttribute("u", users2);
application.setAttribute("u", users3);
%>
<%=((Users)request.getAttribute("u")).getUsername() %>
<%=((Users)request.getAttribute("u")).getAddress().getProvince() %>
<hr>
<!--
如果对应的作用域中没有相应的属性的时候 直接返回空字符串

默认取值的规则 按照作用于的范围从小到大的去查找
-->
${name}
${u.username }<br>
${u.address.province }

${u.address['province'] }

${u.address[prop] }
<!--
如果去那的属性在对应的对象中没有 则会报错
-->
<hr>
<%-- ${u.address['prop'] } --%>

<!--
关于el表达式的作用域

如果不知道作用域的时候 默认从小到大 从PageContext(page)开始查找
如果要指定作用域 由各大作用域的别名+Scope指定 ${requestScope.u}

-->
${sessionScope.u.username }

<hr>

${u[param.name] }<br>
test:${u.test1 }
<!--
el表达式 不能嵌套
-->
<%-- ${u[${param.name}] } --%>
</body>

testcookie.jsp

<body>
<%

session.setAttribute("name", "lisi");
%>
${cookie.JSESSIONID.maxAge }
</body>

testparam.jsp

<body>
<!--
param包装了 从前端传进来的数据 通过键名去得到对应的值
如果有同名不同值的额情况 获取第一个

如果要获取同名的所有值 用paramValues去得到 返回一个字符串的数组 当我们输入的下标越界了 会返回空字符串

-->
Param:${param.name }
Params:${paramValues.name[2] }
</body>

el操作集合:

<body>
<%
List<String> list = new ArrayList<String>();

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

for(int i=0;i<20;i++){
list.add("test list "+(i+1));
map.put("a"+(i+1),"test map "+(i+1));
}
request.setAttribute("l", list);
request.setAttribute("m", map);

%>
${l[1] }
<hr>
${m.a5 }<br>
${m['a6'] }
</body>

EL的基本使用的更多相关文章

  1. jsp页面无法识别el表达式的解决方案

    今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...

  2. Mac制作U盘系统(OS X El Capitan)教程

    前言部分 重装过Mac OS X系统的人应该都深有体会,通过自带的重新安装 Mac OS X功能恢复系统(开机时按Command+R) 要耗费10几个小时才能完成(请求苹果国外服务器),但如果通过U盘 ...

  3. El表达式的关系运算符

    El表达式的关系运算符: ==  对应  eq !=   对应  ne >    对应  gt <    对应  It

  4. java web学习总结(三十一) -------------------EL表达式

    一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...

  5. EL表达式的算术运算

    一个例子--乘法运算 ${book.bookCount * book.bookPrice } 两个不同对象的EL表达式的算术运算同理 ${student.studentNum * book.bookP ...

  6. EL表达式杂项

    1.<%@ page isELIgnored="false" %> 是否忽略EL表达式,如果值为ture,那么  ${..}这样的会直接原样输出,不会进行EL表达式计算 ...

  7. [转载]El Capitan 中 SIP 介绍

    这两天大家纷纷将 OS X 系统升级到了 El Capitan,然后发现,一些注入的工具无法使用了,某些系统目录无法使用了,第三方未签名的 kext 无法加载了,问题一堆堆的.这是因为,Mac OS ...

  8. [Java] JSP笔记 - EL、JSTL 常用标签

    一. 什么是 EL 语言 表达式语言(EL)是 JSP 2.0 引入的一种计算和输出 Java 对象的简单语言. 二.EL 语言的作用 为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMASc ...

  9. c:out标签和el表达式与跨域攻击XSS

    很多时候,在JSP中我们喜欢用EL表达式输出信息,但是最近发现这个确实存在个问题:XSS即跨域攻击. 下面看个例子: <c:out value="${student.name}&quo ...

  10. JavaWeb:EL表达式

    JavaWeb:EL表达式 说明 1.Expression Language语言,一种用于JSP文件中的数据访问的语言. 2.能够简化JSP文件中该数据访问的代码,可用来替代传统的基于<%= % ...

随机推荐

  1. jsr303 参考表

    下面是主要的验证注解及说明: 注解 适用的数据类型 说明 @AssertFalse Boolean, boolean 验证注解的元素值是false @AssertTrue Boolean, boole ...

  2. mysql 索引原理及查询优化

    一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句 ...

  3. New Concept English Two 8 19

    pls  practice every day $课文17 青春常驻 161. My aunt Jennifer is an actress. 我的姑姑詹妮弗是位演员, 162. She must b ...

  4. 解决Eclipse中文乱码的问题

    注意:显示中文所有的编码方式主要是GBK和UTF-8,UTF-8是国际通用的中文编码标准,推荐使用. 一. 设置工作空间的编码 编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置 ...

  5. 汉诺塔(Hanoi)——小小算法

    传送门: 袁咩咩的小小博客 汉诺(Hanoi)塔源于古印度,是非常著名的智力趣题,大意如下: 勃拉玛是古印度的一个开天辟地的神,其在一个庙宇中留下了三根金刚石的棒,第一 根上面套着64个大小不一的圆形 ...

  6. LG2052 [NOI2011]道路修建

    题意 在 W 星球上有 n 个国家.为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通.但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1 条双向道路. 每条道路的 ...

  7. macdown在mac OS 中的配置

    macdown 用命令行打开.md文件 执行两条命令即可. sudo echo "open -a MacDown \$*" > /usr/local/bin/macdown ...

  8. 字符串循环右移N位

    给一个长度为n的字符串,把这个字符串循环右移N位(0<N<n),要求只用O(1)的额外空间和O(N)时间,有些什么方法 一开始想到的是先保存temp=s[0],在左起第N个移到s[0]的位 ...

  9. CentOS之NTP服务器配置

    本文使用CentOS 6.5作为搭建环境 一.服务器端配置 1.安装所需软件包 yum -y install ntp ntpdate---------------------------------- ...

  10. emacs之配置之初始目录设置

    emacsConfig/dir-setting.el (setq default-directory "~/" )