EL表达式与JSTL标签

目录

一、EL表达式

1、EL操作符

2、EL功能

3、EL访问作用域

二、JSTL标签

1、JSTL使用步骤

2、JSTL标签分类

3、JSTL标签的使用


一、EL表达式

Expression Language表达式语言,用于简化JSP页面内的Java代码主要功能:获取数据

语法: 

${expression}

获取域中存储的key为brands的数据

1、EL操作符

1、操作符“.”

获取对象的属性,例如:${news.title}

2、操作符“[ ]

获取对象的属性,例如:${news["title"]}

获取集合中的对象,例如:${newsList[0]}

EL运算符

运算符说明

( )

改变执行的优先级,例如${3*(4+5)}

+,-,*,/,%

算术运算符,例如${3+2}

==,!=,>,>=,<,<=

关系运算符,例如${a==b}${a eq b}

&&,||,!

逻辑运算符,例如${true&&false}

?:

条件运算符,例如${a>b?1:2}

empty

用于检测变量名是否为空,是否等于NULL,例如${empty name}

关系运算符示例结果

== eq

${5 == 5}${5 eq 5}

true

!= ne

${5 != 5}${5 ne 5}

false

< lt

${3 < 5}${3 lt 5}

true

> gt

${3 > 5}{3 gt 5}

false

<= le

${3 <= 5}${3 le 5}

true

>= ge

${3 >= 5}${3 ge 5}

false 

2、EL功能

取得JavaBean对象的属性

${news.title}

 取得数组、List、Map类型对象的元素

${list[0]}

 使用各类运算符对原始数据进行简单处理

${totalRecordCount/pageSize}

 屏蔽一些常见的异常

${username}

 能实现简单的自动类型转换

${news}相当于(News)request.getAttribute("news")

3、EL访问作用域

两种方式取数据:

使用Java小脚本:request.getAttribute("news");

使用EL表达式:${ news } 或者 ${ requestScope.news }

JavaWeb中的四大域对象:

作用域Java代码取值EL取值

请求作用域

request.getAttribute("news");

${ requestScope.news }

会话作用域

session.getAttribute("username");

${ sessionScope.username }

程序作用域

application.getAttribute("count");

${ applicationScope.count }

页面作用域

pageContext.getAttribute("userNum");

${ pageScope.userNum }

el表达式获取数据,会依次从这4个域中寻找,直到找到为止

二、JSTL标签

JSP标准标签库(Jsp Standarded Tag Library),使用标签取代JSP页面上的Java代码

1、JSTL使用步骤

1、下载jstl.jarstandard.jar

2、将这两个包复制到WEB-INF\lib目录

3、在JSP页面中添加指令

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

2、JSTL标签分类

标签库资源标识符前缀

核心标签库

http://java.sun.com/jsp/jstl/core

c

国际化/格式化标签库

http://java.sun.com/jsp/jstl/fmt

fmt

XML标签库

http://java.sun.com/jsp/jstl/xml

x

数据库标签库

http://java.sun.com/jsp/jstl/sql

sql

函数标签库

http://java.sun.com/jsp/jstl/functions

fn

核心标签库

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

国际化/格式化标签库

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

3、JSTL标签的使用

<c:out/>标签

语法:

value="value":需要输出显示的表达式
default="default":默认输出显示的值
escapeXml="true|false":是否对输出的内容进行转义

<c:out value="value" default="default" escapeXml="true|false" />

设置变量

var="name" :表示变量名称
value= "value":表示变量的值
scope="scope":存在的作用域

<c:set  var="name"  value= "value" scope="scope" />

设置对象属性

value= "value":表示属性的值
target="target":表示对象
property="propertyName":表示对象的属性名称

<c:set value= "value" target="target" property="propertyName" />

<c:forEach/>标签

<c:forEach/>迭代标签:实现对集合的遍历

var="varName":集合中元素的名称
items="items":集合对象
varStatus="varStatus":当前循环的状态信息,例如循环的索引号

<c:forEach var="varName" items="items" varStatus="varStatus">
     ……
</c:forEach>

<c:if/>标签

<c:if/>条件标签:实现条件的判断

var="varName":判断的结果
scope="scope":判断结果存放的作用域

<c:if test="condition" var="varName" scope="scope">
         ……
</c:if>

使用JSTL构建URL

<c:url/>超链接标签

<c:url  value="url" />

<c:param/>参数标签

name="name":参数的名称
value="value":参数的值

<c:param name="name"  value="value"/>

<c:import/>导入标签

url="URL":导入资源的路径

<c:import url="URL" />

<fmt:formatDate/>标签

<fmt:formatDate/>格式化标签:实现格式化的日期和时间显示

value="date":时间对象
pattern="yyyy-MM-dd HH:mm:ss":显示格式

<fmt:formatDate  value="date"  pattern="yyyy-MM-dd HH:mm:ss"/>
标签名作用

<c:out />

输出文本内容到out对象,常用于显示特殊字符,显示默认值

<c:set/>

在作用域中设置变量或对象属性的值

<c:remove/>

在作用域中移除变量的值

<c:if/>

实现条件判断结构

<c:forEach/>

实现循环结构

<c:url/>

构造url地址

<c:param/>

url后附加参数

<c:import/>

在页面中嵌入另一个资源内容

<fmt:formatDate/>

格式化时间

<fmt:formatNumber/>

格式化数字

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaWeb 中,使用 EL 表达式和 JSTL 可以实现在 JSP 页面中进行动态数据处理和展示。下面我来分别介绍这两种技术的实现方法。 1. EL 表达式的实现 EL 表达式是一种用于在 JSP 页面中访问 JavaBean 中属性的语言。在 JSP 页面中,我们可以通过 ${} 语法来使用 EL 表达式。例如,我们可以通过 ${user.name} 来获取 JavaBean 中的 name 属性的值。 要在 JavaWeb 中使用 EL 表达式,我们需要完成以下步骤: 1) 在 JSP 页面中引入 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>,指定页面编码为 UTF-8。 2) 在 JSP 页面中引入 JSTL 标签库 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>。 3) 在 JavaBean 中定义属性,并提供 getter 和 setter 方法。 4) 在 JSP 页面中使用 EL 表达式来访问 JavaBean 的属性值。例如:${user.name}。 2. JSTL 的实现 JSTL 是一组 JSP 自定义标签,用于在 JSP 页面中进行动态数据处理和展示。JSTL 提供了一些常用的标签库,例如 core、fmt、sql、xml 和 functions 等。 要在 JavaWeb 中使用 JSTL,我们需要完成以下步骤: 1) 在 JSP 页面中引入 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>,指定页面编码为 UTF-8。 2) 在 JSP 页面中引入 JSTL 标签库 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>。 3) 在 JSP 页面中使用 JSTL 标签库提供的标签来进行动态数据处理和展示。例如,使用 <c:forEach> 标签来遍历一个集合: ``` <c:forEach var="item" items="${list}"> ${item} </c:forEach> ``` 这样就可以在 JSP 页面中使用 EL 表达式和 JSTL 来进行动态数据处理和展示了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值