JavaWeb之路06--JSTL表达式

JSP之JSTL表达式

JSTL表达式

JSTL全称JSP Standard Tag Library,即JSP标准标签库。是一个JSP标签集合,它封装了JSP应用的通用核心功能。


JSTL的使用步骤

导入jar包

Apache Tomcat安装JSTL 库步骤如下:

从Apache的标准标签库中下载的二进包(jakarta-taglibs-standard-current.zip)。

官方下载地址:http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
菜鸟教程下载地址:jakarta-taglibs-standard-1.1.2.zip

我们需要两个jar包:

下载 jakarta-taglibs-standard-1.1.2.zip 包并解压,将 jakarta-taglibs-standard-1.1.2/lib/ 下的两个 jar 文件:standard.jar 和 jstl.jar 文件拷贝到 /WEB-INF/lib/ 下。

在页面中导入标签库

<%@taglib prefix="<string>" uri="<string>"%>
注:
prefix:前缀
uri:需要的库

e.g.

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


JSTL分类

core

core:核心标签

引用核心标签库的语法如下:
<%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>

标签描述
<c:out>用于在JSP中显示数据,就像<%= … >
<c:set>用于保存数据
<c:remove>用于删除数据
<c:catch>用来处理产生错误的异常状况,并且将错误信息储存起来
<c:if>与我们在一般程序中用的if一样
<c:choose>本身只当做<c:when>和<c:otherwise>的父标签
<c:when><c:choose>的子标签,用来判断条件是否成立
<c:otherwise><c:choose>的子标签,接在<c:when>标签后,当<c:when>
<c:import>检索一个绝对或相对 URL,然后将其内容暴露给页面
<c:forEach>基础迭代标签,接受多种集合类型
<c:forTokens>根据指定的分隔符来分隔内容并迭代输出
<c:param>用来给包含或重定向的页面传递参数
<c:redirect>重定向至一个新的URL.
<c:url>使用可选的查询参数来创造一个URL

<c:out/>标签

<c:out>标签用来显示一个表达式的结果,与<%= %>作用相似,它们的区别就是<c:out>标签可以直接通过"."操作符来访问属性。

语法格式:

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

<c:out>标签有如下属性:

属性描述
value要输出的内容
default输出的默认值
escapeXml是否忽略XML特殊字符,默认值:true

<c:if/>标签

<c:if>标签判断表达式的值,如果表达式的值为 true 则执行其主体内容。

语法格式

<c:if test="<boolean>" var="<string>" scope="<string>">
   ...
</c:if>

<c:if>标签有如下属性:

属性描述
test判读条件
var用于存储条件结果的变量
scopevar属性的作用域,默认值:page

<c:choose/>、<c:when/>、<c:otherwise/>标签

<c:choose>标签与Java switch语句的功能一样,用于在众多选项中做出选择。
switch语句中有case,而<c:choose>标签中对应有<c:when>,switch语句中有default,而<c:choose>标签中有<c:otherwise>。

语法格式

<c:choose>
    <c:when test="<boolean>">
        ...
    </c:when>
    <c:when test="<boolean>">
        ...
    </c:when>
    ...
    ...
    <c:otherwise>
        ...
    </c:otherwise>
</c:choose>

属性

<c:choose>标签没有属性。
<c:when>标签只有一个属性,test
<c:otherwise>标签没有属性。

<c:when>标签的属性如下:

属性描述
test循环条件

<c:forEach/>标签

<c:forEach/>标签封装了Java中的for,while,do-while循环,它迭代一个集合中的对象。用法与功能类似于Java中的增强for

forEach 语法格式

<c:forEach items="<object>"  begin="<int>"  end="<int>"  step="<int>"  var="<string>"  varStatus="<string>">

属性

<c:forEach>标签有如下属性:

属性描述
items要被循环的信息
begin开始的元素(索引中0代表第一个元素),默认值:0
end最后一个元素,默认值:最后一个元素索引
step每一次迭代的步长,默认值:1
var代表当前条目的变量名称
varStatus代表循环状态的变量名称

<c:set/>标签

<c:set>标签用于设置变量值和对象属性,与jsp:setProperty行为标签的功能相同。它能计算表达式的值,然后使用计算结果来设置 JavaBean 对象或 java.util.Map 对象的值。

语法格式

<c:set var="<string>" value="<string>" target="<string>" property="<string>" scope="<string>"/>

<c:set>标签有如下属性:

属性描述
value要存储的值
target要修改的属性所属的对象
property要修改的属性
var存储信息的变量
scopevar属性的作用域,默认值:Page

如果指定了target属性,那么property属性也需要被指定。


<c:import/>标签

<c:import>标签提供了所有<jsp:include>行为标签所具有的功能,同时也允许包含绝对URL,举例来说,使用<c:import>标签可以包含一个FTP服务器中不同的网页内容。

语法格式

<c:import url="<string>" var="<string>" scope="<string>" varReader="<string>" context="<string>" charEncoding="<string>"/>

<c:import>标签有如下属性:

属性描述
url待导入资源的URL,可以是相对路径和绝对路径,并且可以导入其他主机资源
context当使用相对路径访问外部context资源时,context指定了这个资源的名字。默认值:当前应用程序
charEncoding所引入的数据的字符编码集,默认值:ISO-8859-1
var用于存储所引入的文本的变量
scopevar属性的作用域,默认值:page
varReader可选的用于提供java.io.Reader对象的变量



fmt

fmt: 格式化标签

JSTL格式化标签用来格式化并输出文本、日期、时间、数字。引用格式化标签库的语法如下:
<%@ taglib prefix=“fmt”
uri=“http://java.sun.com/jsp/jstl/fmt” %>

标签描述
<fmt:formatNumber>使用指定的格式或精度格式化数字
<fmt:parseNumber>解析一个代表着数字,货币或百分比的字符串
<fmt:formatDate>使用指定的风格或模式格式化日期和时间
<fmt:parseDate>解析一个代表着日期或时间的字符串
<fmt:bundle>绑定资源
<fmt:setLocale>指定地区
<fmt:setBundle>绑定资源
<fmt:timeZone>指定时区
<fmt:setTimeZone>指定时区
<fmt:message>显示资源配置文件信息
<fmt:requestEncoding>设置request的字符编码



sql

JSTL SQL标签库提供了与关系型数据库(Oracle,MySQL,SQL Server等等)进行交互的标签。引用SQL标签库的语法如下:

<%@ taglib prefix=“sql”
uri=“http://java.sun.com/jsp/jstl/sql” %>


xml

JSTL XML标签库提供了创建和操作XML文档的标签。引用XML标签库的语法如下:

<%@ taglib prefix=“x”
uri=“http://java.sun.com/jsp/jstl/xml” %>


function

JSTL包含一系列标准函数,大部分是通用的字符串处理函数。引用JSTL函数库的语法如下:

<%@ taglib prefix=“fn”
uri=“http://java.sun.com/jsp/jstl/functions” %>



部分内容转自菜鸟教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值