欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Web基础了解版08-JSTL

程序员文章站 2023-09-28 21:39:04
JSTL JSP为我们提供了可以自定义标签库(Tag Library)的功能,用来替代代码脚本,Sun公司又定义了一套通用的标签库名为JSTL(JSP Standard Tag Library),里面定义很多我们开发中常用的方法 使用JSTL 1.先引入JSTL标签库的jar包类库到WEB-INF/ ......

jstl

 jsp为我们提供了可以自定义标签库(tag library)的功能,用来替代代码脚本,sun公司又定义了一套通用的标签库名为jstl(jsp standard tag library),里面定义很多我们开发中常用的方法

使用jstl

  1.先引入jstl标签库的jar包类库到web-inf/lib目录下

Web基础了解版08-JSTL

2.使用taglib指令导入需要的标签库

core 标签库
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
xml 标签库
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
fmt 标签库 
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
sql 标签库
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
functions 标签库
 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

 3.使用jstl

 如:<c:out value="hello"></c:out>

 即:调用前缀为c的标签的out方法,向页面中输出value属性中的字符串。

 core标签库

<c:out>标签

作用:<c:out>用于计算一个表达式并将结果输出到当前页面。功能类似于jsp表达式<%= %>和el表达式${}

属性:

属性 作用 参数类型
value 要输出的值 object
default 当value为null时显示的默认值 object
escaxml 是否对特殊字符进行转义 boolean
<c:out value="${user.name}" default="" escapexml="true"></c:out>

<c:set>标签

作用:<c:set>标签 用于 添加 或 修改 域中的属性。

属性:

属性 描述 是否必要 默认值
value 要存储或修改的值 主体的内容
target 要修改的域中的对象(必须是javabean或者map)
property 指定要修改的对象的属性名
var 表示域中存放的属性名
scope var属性的作用域 (page , request , session ,application) ,若不指定则为page page

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

<c:if>标签

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

属性:

属性 描述 是否必要 默认值
test 条件
var 用于存储条件结果的变量
scope var属性的作用域 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:otherwise>标签没有属性。

<c:when>标签只有一个属性,如下:

属性 描述 是否必要 默认值
test 条件

<c:foreach>标签

作用:<c:foreach>标签是迭代一个集合中的对象-可以是数组,也可以是list,也可以是map对象。

属性

属性 描述 是否必要 默认值
items 要被循环的数据集合-可以使用el表达式
begin 开始的索引(0=第一个元素,1=第二个元素) 0
end 最后一个索引(0=第一个元素,1=第二个元素) last element
step 每一次迭代的步长 1
var 代表当前条目的变量名称
varstatus 代表循环状态的变量名称

varstatus状态:

  • 作用:指定保存迭代状态的对象的名字,该变量引用的是一个looptagstatus类型的对象

  • 通过该对象可以获得一些遍历的状态

    • begin 获取begin属性里的值

    • end 获取end属性里的值

    • count 获取当前遍历的个数

    • index 获取当前索引值

    • first 获取是否是第一个元素

    • last 获取是否是最后一个元素

    • current 获取当前遍历的元素对象

<c:remove>标签

作用:用于移除域中的属性

属性:

属性 作用 参数类型
var 设置要移除的属性的名字 string
scope 设置要移除属性所在的域,若不指定则删除所有域中的对应属性 string

<c:url>标签

作用:主要用来重写url地址

属性:

属性 作用 参数类型
value 设置要处理的uri地址,注意这里要以/开头 string
var 修改后存储到域对象中的uri属性名 string
scope l 设置修改后uri存放的域 string

<c:redirect>标签

作用:用于将请求重定向到另一个资源地址

属性:

属性 作用 参数类型
uri 指定要重定向到的目标地址,注意这里指定绝对路径会自动加上项目名 string

jstl函数

 函数标签库中定义的函数基本上都是对字符串的操作。

fn:contains和fn:containsignorecase

 作用:用于判断字符串中是否包含指定字符串,containsignorecase忽略大小写。

参数和返回值:

参数 类型 作用
string string 源字符串
substring string 要查找的字符串
返回值 boolean 若string中包含substring则返回true,否则返回false

fn:startswith和fn:endswith

作用:判断一个字符串是否以指定字符开头(startswith)或结尾(endswith)

参数和返回值:

参数 类型 作用
string string 源字符串
prefix 或 suffix string 要查找的前缀或后缀字符串
返回值 boolean 符合要求返回true,否则返回false

fn:indexof

作用:在一个字符串中查找指定字符串,并返回第一个符合的字符串的第一个字符的索引。

参数和返回值:

参数 类型 作用
string string 源字符串
substring string 要查找的字符串
返回值 int 若在string中找到substring则返回第一个符合的索引,若没有符合的则返回-1

fn:replace

作用:将一个字符串替换为另外一个字符串,并返回替换结果

参数和返回值:

参数 类型 作用
str string 源字符串
beforesubstring string 被替换的字符串
aftersubstring string 要替换的新字符串
返回值 string 替换后的字符串

fn:substring

作用:截取字符串

参数和返回值:

参数 类型 作用
str string 源字符串
beginindex int 开始位置索引(包含该位置)
endindex int 结束位置索引(不包含自身)
返回值 string 返回截取的字符串

fn:substringbefore和fn:substringafter

作用:返回源字符串中指定的子字符串之前(substringbefore)之后(substringafter)的字符串

参数和返回值:

参数 类型 作用
str string 源字符串
substring string 指定str中的一个子串,该串之前或之后的字符串将被返回。
返回值 string 返回截取的字符串

fn:split

作用:将一个字符串拆分成字符串数组。

参数和返回值:

参数 类型 作用
str string 要被拆分的字符串
delimiters string 指定根据什么内容拆分字符串
返回值 string[] 返回拆分后的字符串数组

fn:join

作用:将数组中所有元素连接成一个字符串

参数和返回值:

参数 类型 作用
str string[] 要被连接的字符串数组
sparator string 在结果中每个元素之间的分隔符
返回值 string 拼接之后的结果

fn:tolowercase和fn:touppercase

作用:将字符串都转换成大写(touppercase)或小写(tolowercase)字符

参数和返回值:

参数 类型 作用
str string 源字符串
返回值 string 转换为大写或小写的字符串

fn:trim

作用:去掉字符串的前后空格

参数 类型 作用
str string 源字符串
返回值 string 去掉前后空格的结果

fn:length

作用:返回集合或者字符串的长度,此处为方法区别java中的lengh属性

参数和返回值:

参数 类型 作用
input string、集合、数组 要计算长度的目标
返回值 int 集合或字符串的长度