EL的基本使用
总结: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的基本使用的更多相关文章
- jsp页面无法识别el表达式的解决方案
今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...
- Mac制作U盘系统(OS X El Capitan)教程
前言部分 重装过Mac OS X系统的人应该都深有体会,通过自带的重新安装 Mac OS X功能恢复系统(开机时按Command+R) 要耗费10几个小时才能完成(请求苹果国外服务器),但如果通过U盘 ...
- El表达式的关系运算符
El表达式的关系运算符: == 对应 eq != 对应 ne > 对应 gt < 对应 It
- java web学习总结(三十一) -------------------EL表达式
一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...
- EL表达式的算术运算
一个例子--乘法运算 ${book.bookCount * book.bookPrice } 两个不同对象的EL表达式的算术运算同理 ${student.studentNum * book.bookP ...
- EL表达式杂项
1.<%@ page isELIgnored="false" %> 是否忽略EL表达式,如果值为ture,那么 ${..}这样的会直接原样输出,不会进行EL表达式计算 ...
- [转载]El Capitan 中 SIP 介绍
这两天大家纷纷将 OS X 系统升级到了 El Capitan,然后发现,一些注入的工具无法使用了,某些系统目录无法使用了,第三方未签名的 kext 无法加载了,问题一堆堆的.这是因为,Mac OS ...
- [Java] JSP笔记 - EL、JSTL 常用标签
一. 什么是 EL 语言 表达式语言(EL)是 JSP 2.0 引入的一种计算和输出 Java 对象的简单语言. 二.EL 语言的作用 为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMASc ...
- c:out标签和el表达式与跨域攻击XSS
很多时候,在JSP中我们喜欢用EL表达式输出信息,但是最近发现这个确实存在个问题:XSS即跨域攻击. 下面看个例子: <c:out value="${student.name}&quo ...
- JavaWeb:EL表达式
JavaWeb:EL表达式 说明 1.Expression Language语言,一种用于JSP文件中的数据访问的语言. 2.能够简化JSP文件中该数据访问的代码,可用来替代传统的基于<%= % ...
随机推荐
- 020PHP基础知识——函数(三)
<?php /** * 任何数量的参数: * func_get_args() 接收一个数组,数组里面包含所有参数 * func_num_args() 取得共有几个参数 * func_get_ar ...
- 升级安装windows8.1以后windowsphone8不能启动虚拟机的办法
如果之前在的虚拟机是OK的话,VS2012需要安装update3补丁才可以. 下载地址:http://download.microsoft.com/download/D/4/8/D48D1AC2-A2 ...
- Eclipse Oxygen SVN Connector Setup
新版的Eclipse(Oxygen)安装完Subversive后,现时无法自动安装SVN Connector,无论选择哪个都会自动关闭. 解决方法: Help -> Install New So ...
- istringstream、ostringstream、stringstream类介绍
本文转载自: http://www.cnblogs.com/gamesky/archive/2013/01/09/2852356.html 一.C++的输入输出分为三种: (1)基于控制台的I/O ( ...
- Winform创建解决方案
Winform的开发工具可以使用VS2005---VS2013,版本在不断升级,VS的功能也越来越强大.本系列文章采用VS2012(以后全称VS)演示. 窗体是winform开发的基础,需要掌握窗体的 ...
- BZOJ3212: Pku3468 A Simple Problem with Integers(线段树)
3212: Pku3468 A Simple Problem with Integers Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 2530 So ...
- # 20155327 2016-2017-4 《Java程序设计》第8周学习总结
20155327 2016-2017-4 <Java程序设计>第7周学习总结 教材学习内容总结 了解NIO NIO使用频道(Channel)来衔接数据节点,在处理数据时,NIO可以让你设定 ...
- 屏幕录制专家【Bandicam】
BANDICAM是一款屏幕游戏录制工具. 今天给大家详细介绍下它的下载和破解使用. 安装方法: 一.准备工作 1.官网下载最新版. https://www.bandicam.com/cn/ 2.下载注 ...
- L3-011 直捣黄龙 (30 分)
本题是一部战争大片 —— 你需要从己方大本营出发,一路攻城略地杀到敌方大本营.首先时间就是生命,所以你必须选择合适的路径,以最快的速度占领敌方大本营.当这样的路径不唯一时,要求选择可以沿途解放最多城镇 ...
- 《DSP using MATLAB》示例Example 10.4
代码: %% ------------------------------------------------------------------------ %% Output Info about ...