EL与JSTL注意事项汇总
EL使用表达式(5一个 问题)
JSTL使用标签(5问题)
什么是EL。它可以用做?
EL全名Expression Language在JSP使用页面
格公式${表达式}
样例${requestScope.customer.id}
功能:
1.才四个域对象中取出属性数据显示
(pageContext.request.session.application)
2.取出请求參数数据显示
<%
request.setAttribute("person",new Person("xfzhanag",18));
%>
Map<String,Person> map=new HashMap<String,Person>();
map.put("A",new Person("AA",12));
map.put(""B",new Person("BB",13));
map.B.age${requestScope.B.age};
map.B.age${requestScope.['B'].age};
${requestScope.person.name};
${requestScope.person['name']};
List里面的第二个数据
<%
<%
List list=new ArrayList();
list.add("a");
list.add("b");
list.add("c");
request.setAttribute("List",list);
%>
${requestScope.List[1]};
${requestScope.List['name']};
我的年龄:<requestScope.person.name><br/>
//什么方便?为什么有个中括号?
/*
一种情况?
${requestScope['my person'].name};
map.put("my person",new Person("Xxx",12));
*/
EL能进行的运算?
算数运算(+,-, * ,/ ,%)
关系运算(>,<,==,!=)
逻辑运算(&&,||)
empty运算(推断一个数据是否是空)
(null,空字符串,空集合)
${empty name}<br>
${empty list}<br>
${empty person}<br>
三目条件运算
${requestScope.person.age>18 ? '成年' : '未成年' }
${person.age>18 ? '成年' : '未成年' }
<!--不加隐含对象。如何找到的呢?
pageScope,requestScope,
sessionScope,applicationScope
从小到大的一个范围!
-->
<%
request.setAttribute("list",new ArrayList());
request.setAttribute("name","");
request.setAttribute("person","new Pseron("Xxx",19));
%>
隐含对象
PageContext javax.servlet.ServletContext
PageScope java.uti.Map
RequestScope java.util.Map
sessionScope java.util.Map
applicationScope java.util.Map
param java.util.Map
EL怎样获取对象的内部数据?
获取的方式
通过点(.)来取数据
通过中括号[]来取数据
对象的类型
一般对象
Map对象
数组/List/Set
EL的不足在哪?
不能遍历。逻辑推断差
JSTL(5个问题)
什么是JSTL,它能做什么?
JSTL为jsp stardard tag library在jsp页面使用
功能:实现数据基本输入输出,流程控制,循环,国际化等功能
JSTL 前置名称
URI 范例
核心标签库 c http://sun.com/jsp/jstl/core
c:out
I18格式标签库 fmt http://sun.com/jsp/jstl/xml
fmt:formDate
SQL标签库 sql http://sun.com/jsp/jstl/sql
sql:query
xml标签库 xml http://sun.com/jsp/jstl/fmt
x:forBach
函数标签库 fn http://sun.com/jsp/jstl/function
fn:split
为什么使用JSTL?
在jsp中使用jsp脚本+jsp表达式也能够做循环输出,太麻烦
EL不能做遍历工作
JSTL能做这些并且与jsp和html的标签能够非常好的结合
JSTL高速入门
1.导入JSTL相关的jar包:
jstl.jar
standard.jar
2.在jsp文件里导入JSTL的c标签库
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" perfix="c"
%>
3
<%
List<String> list=new ArrayList<String>();
list.add("A");
list.add("B");
list.add("C");
request.setAttribute("list",list);
%>
<c:forEach items="${requestScope.list}" var="item">
${item}<br/>
</c:forEach>
jstl怎样做流程控制?
c:if(一重条件推断)
c:choose
c:when
//需求1:假设我的年龄小于18就输出未成年成(红色字体)
<c:if test="${person.age<18}">
<font color="red">未成年人</font>
</c:if>
需求2:假设年龄大于60,就输出’老头子‘
假设年龄小于18,就输出"小屁孩"
其它。就输出"成年人"
<br/>
<c:choose>
<c:when test="${person.age>60}">老头子
</c:when>
<c:when test="${person.age<18}">小屁孩
</c:when>
<c:otherwise>成年人</c:otherwise>
</c:choose>
jstl怎样做遍历?
<%
Map<String,Person> map=new
HashMap<String,Person>();
map.put("1",new Person("AA",23));
map.put("2",new Person("BB",23));
map.put("3",new Person("CC",23));
map.put("4",new Person("DD",23));
map.put("5",new Person("EE",23));
map.put("6",new Person("FF",23));
request.setAttribute("personMap",map);
%>
<h3>将数据用表格显示出来</h3>
<table border="1" style="width:300px">
<tr>
<td>ID</td>
<td>姓名</td>
<td>年龄</td>
</tr>
<c:forEach items="${personMap}" var="item">
<!--${itm.class}-->
<tr>
<td>${item.key}</td>
<td>${item.value.name}</td>
<td>${item.value.age}</td>
</tr>
</table>
版权声明:本文博客原创文章,博客,未经同意,不得转载。
EL与JSTL注意事项汇总的更多相关文章
- ARCGIS 10.1 发布服务问题以及注意事项汇总
本文会逐渐丰富,并在遇到问题后进行整理进来. 一.了解ArcGIS Server以及如何利用ArcServer发布服务 官方中文帮助文档:http://resources.arcgis.com/zh- ...
- jsp与El,jstl知识点总结归纳
jsp与El,jstl知识点总结归纳 jsp部分 一.jsp的三大指令 page ,include,taglib 1.jsp中的page指令 <% page %>-设置jsp 例如: &l ...
- JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门
2 JSP内置标签(美化+业务逻辑) 1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容 2)JSP内 ...
- 在idea的maven项目使用el或jstl表达式
必须加上这句: <%@ page isELIgnored="false" %> 否则无法解析el或jstl表达式 <%@ taglib prefix=" ...
- 第75节:Java的中的JSP,EL和JSTL
第75节:Java中的JSP,EL和JSTL 哭吧看不完的!!! Cookie和`Session 请求转发和重定向的区别: 地址不一样 请求次数也不一样 数据无法传递 4.跳转范围有限制 效率 请求转 ...
- JSP、EL、JSTL
JSP(Java Server Pages) 什么是JSP Java Server Pages(Java服务器端的页面) 使用JSP:SP = HTML + Java代码 + JSP自身的东西.执行J ...
- jsp中的EL和JSTL的关系
对于JSTL和EL之间的关系,这个问题对于初学JSP的朋友来说,估计是个问题,下面来详细介绍一下JSTL和EL表达式他们之间的关系,以及JSTL和EL一些相关概念! EL相关概念 JSTL一般要配合E ...
- Jsp应用EL和JSTL实例对比。
普通方式: register.jsp <%@ page language="java" import="java.util.*" pageEncoding ...
- EL 和 JSTL
EL 什么是EL表达式 EL(Express Lanuage) 表达式可以嵌入在jsp页面内部 减少jsp脚本的编写 EL出现的目的是要替代jsp页面中脚本的编写 作用区间 EL最主要的作用是获取四大 ...
随机推荐
- c++一些语法模板
函数模板特 template <class T> int compare(T v1,T v2) { if(v1<v2) return -1; else if(v1>v2) re ...
- (白书训练计划)UVa 120 Stacks of Flapjacks(构造法)
题目地址:UVa 120 水题. 从最大的開始移,每次都把大的先翻到最上面,再翻到以下. 代码例如以下: #include <iostream> #include <cstdio&g ...
- 备份恢复与CRM集成的sharepoint站点
在部署CRM与Sharepoint2010集成文档管理之后,一直担心如果需要在新服务器上重新部署CRM, 那么之前与CRM集成的Sharepoint2010文档内容,是否可以重新正确映射到相应的文档位 ...
- HTML中的div标签
在网页制作过程过中,能够把一些独立的逻辑部分划分出来.放在一个<div>标签中,这个<div>标签的作用就相当于一个容器. 为了使逻辑更加清晰,我们能够为这一个独立的逻辑部分设 ...
- 《Nginx文件类型错误解析漏洞--攻击演练》 (转)
今天看书看到其中提到的一个漏洞,那就是Nginx+PHP的服务器中,如果PHP的配置里 cgi.fix_pathinfo=1 那么就会产生一个漏洞.这个配置默认是1的,设为0会导致很多MVC框架(如T ...
- java-IO操作性能对照
在软件系统中.IO速度比内存速度慢,IO读写在非常多情况下会是系统的瓶颈. 在java标准IO操作中,InputStream和OutputStream提供基于流的IO操作.以字节为处理单位:Reade ...
- Spark1.0.0 属性配置
1:Spark1.0.0属性配置方式 Spark属性提供了大部分应用程序的控制项,而且能够单独为每一个应用程序进行配置. 在Spark1.0.0提供了3种方式的属性配置: Sp ...
- UVALive 3890 Most Distant Point from the Sea(凸包最大内接园)
一个n个点的凸多边形,求多边形中离多边形边界最远的距离.实际上就是求凸包最大内接圆的半径. 利用半平面交求解,每次二分枚举半径d,然后将凸包每条边所代表的半平面沿其垂直单位法向量平移d,看所有平移后的 ...
- 为什么不要在android或者ios上直连mysql或者sqlserver之类的数据库(跳大神)
很多同学 都有直连这些数据库的想法,假设我说了下面二个问题之后你还想直连,那我也没办法 数据库是一个服务端最重要的部分,也是最脆弱的部分,更是最敏感的部分 假设直连会造成例如以下问题 1.安全问题,你 ...
- 《炉石传说》建筑设计欣赏(7):采用Google.ProtocolBuffers处理网络消息
这一次,琢磨了一下Unity3D网络游戏发展的网络信息处理.服务器的网络游戏一般都是自主研发,因此,相应的网络消息处理应该培养自己.client/现在使用的邮件服务器之间的价差JSON和Google. ...