zoukankan      html  css  js  c++  java
  • Web基础了解版08-JSTL-Core标签库

    JSTL

     JSP为我们提供了可以自定义标签库(Tag Library)的功能,用来替代代码脚本,Sun公司又定义了一套通用的标签库名为JSTL(JSP Standard Tag Library),里面定义很多我们开发中常用的方法

    使用JSTL

      1.先引入JSTL标签库的jar包类库到WEB-INF/lib目录下

    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 集合或字符串的长度
  • 相关阅读:
    Redis哨兵(Sentinel)模式
    一个http请求就是一个线程吗,java的服务是每收到一个请求就新开一个线程来处理吗
    Redis 快速入门
    Redis 持久化之RDB和AOF
    Junit 入门使用教程 转自:http://www.cnblogs.com/ysocean/p/6889906.html
    Spring里PropertyPlaceholderConfigurer类的使用 转自:https://www.cnblogs.com/huqianliang/p/5673701.html
    Apache Commons Codec 编码/解码 (Base64/MD5/SHA1/SHA256等算法) 转自https://blog.csdn.net/hbtj_1216/article/details/52813741
    hive中时间日期函数的使用
    关于mat函数
    strip 和split
  • 原文地址:https://www.cnblogs.com/Open-ing/p/12101390.html
Copyright © 2011-2022 走看看