EL和JSTL

一、EL

什么是EL?

EL主要用于查找作用域中的数据,然后对它们执行简单操作;它不是编程语言,甚至不是脚本编制语言。通常与 JSTL 标记一起作用,能用简单而又方便的符号来表示复杂的行为。

EL表达式的作用是什么?

可以简化对变量和对象的访问

EL基本格式:

EL表达式的格式:用美元符号( ,;: {loginInfoBean.suser}
也可以将多个表达式与静态文本组合在一起以通过字符串并置来构造动态属性值;
例如:Hello {loginInfoBean.suser} ${loginInfoBean.spwd}

EL运算符:

算术运算符 +、-、*、/(或 div)和 %(或 mod)
关系运算符 ==(或eq)、!=(或ne)、<(或lt)、>(或gt)、<=(或le) 和 >=(或ge)
逻辑运算符 &&(或 and)、||(或or)和 !(或 not)
验证运算符 empty
验证运算符(empty):对于验证数据特别有用。empty 运算符采用单个表达式作为其变量(也即,${empty input}),并返回一个布尔值,该布尔值表示对表达式求值的结果是不是“空”值。求值结果为 null 的表达式被认为是空,即无元素的集合或数组。如果参数是对长度为零的 String 求值所得的结果,则 empty 运算符也将返回 true。

二、JSTL

JSTL是什么?

JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。JSTL1.0 由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器组成。core 标记库提供了定制操作,通过限制了作用域的变量管理数据,以及执行页面内容的迭代和条件操作。它还提供了用来生成和操作 URL 的标记。format 标记库定义了用来格式化数据(尤其是数字和日期)的操作。它还支持使用本地化资源束进行JSP页面的国际化。xml 库包含一些标记,这些标记用来操作通过XML表示的数据,而 sql 库定义了用来查询关系数据库的操作。 两个 JSTL 标记库验证器允许开发人员在其 JSP 应用程序中强制使用编码标准。
如果要使用JSTL,则必须引用jstl.jar和 standard.jar两个包。

为什么要用JSTL?

JSP中嵌入java代码(scriptlet、表达式和声明)带来如下问题:
- jsp维护难度增大;
- 不容易调试;
- 最终增加程序的开发成本;
- 代码臃肿,不易观察

JSTL部署

在EE应用程序中部署JSTL有两种方式:
已存在的工程上部署
将jstl.jar和standard.jar两个包考到现有工程
WebRoot / WEB-INF / lib 目录下
将相关的 .tld文件考到现有工程 WebRoot / WEB-INF 目录下;
也可通过eclipse在已存在
工程上部署
新建工程的时候直接部署

1.在JSP使用JSTL-core标签库

core在jsp中的使用:
在 web.xml 中添加

    <jsp-config>
  <taglib>
      <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
      <taglib-location>/WEB-INF/c.tld</taglib-location>
  </taglib>
    </jsp-config>

在jsp文件中添加

<%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>或<%@ taglib prefix="c" uri="/WEB-INF/c.tld" %>
常用标签
获取输出作用域中变量.
<c:out >      
定义作用域中变量
<c:set >      
Core的条件控制标签
单分支条件
<c:if >  
多分支条件
<c:when > 
<c:otherwise >
输出转换成的URL:
<c:url > 
实现简单循环
<c:forEach >  var='item'  varStatus=‘’
fmt常用标签
初始化时间
<fmt:formatDate > 
    <fmt:formatDatevalue="<%=new Date() %>" pattern="yyyy-MM-ddHH:mm:ss"/>
初始化数字
<fmt:formatNumber > 
    <fmt:formatNumbervalue="3.85" type="currency"  maxFractionDigits="2">
</fmt:formatNumber>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值