JSP中的JSTL 标签库

JSTL 标签库

JSTL 标签库 全称是指 JSP Standard Tag Library JSP 标准标签库。是一个不断完善的开放源代码的 JSP 标
签库。
EL 表达式主要是为了替换 jsp 中的表达式脚本,而标签库则是为了替换代码脚本。这样使得整个 jsp 页面
变得更佳简洁。

JSTL 由五个不同功能的标签库组成。

功能范围 URI 前缀 核心 标签库– 重点
http://java.sun.com/jsp/jstl/core

c 格式化
http://java.sun.com/jsp/jstl/fmt

fmt 函数
http://java.sun.com/jsp/jstl/functions

fn 数据库(不使用)
http://java.sun.com/jsp/jstl/sql

sql XML(不使用)
http://java.sun.com/jsp/jstl/xml

在 jsp 标签库中使用 taglib 指令引入标签库

CORE 标签库

XML 标签库

FMT 标签库

SQL 标签库

FUNCTIONS 标签库

JSTL 标签库的使用步骤

1、先导入 jstl 标签库的 jar 包。

  • taglibs-standard-impl-1.2.5.jar
  • taglibs-standard-spec-1.2.5.jar 下载地址https://tomcat.apache.org/download-taglibs.cgi

2、第二步,使用 taglib 指令引入标签库。


core 核心库使用

作用:set 标签可以往域中保存数据


    作用: set 标签可以往域中保存数据
    域对象 .setAttribute(key,value);
    scope 属性设置保存到哪个域
    page 表示 PageContext 域(默认值)
    request 表示 Request 域
    session 表示 Session 域
    application 表示 ServletContext 域
    var 属性设置 key 是多少
    value 属性设置值
    --%>
    保存之前:${ sessionScope.abc }

--%>
    保存之后:${ sessionScope.abc }

结果:

JSP中的JSTL 标签库

if 标签用来做 if 判断。

例:


if 标签用来做 if 判断。
test 属性表示判断的条件(使用 EL 表达式输出)
--%>

        12 等于 12

        12 不等于 12

结果:

JSP中的JSTL 标签库

作用:多路判断。跟 switch … case …. default 非常接近


       标签
    作用:多路判断。跟 switch ... case .... default 非常接近
    choose 标签开始选择判断
    when 标签表示每一种判断情况
    test 属性表示当前这种判断情况的值
    otherwise 标签表示剩下的情况
       标签使用时需要注意的点:
    1 、标签里不能使用 html 注释,要使用 jsp 注释
    2 、 when 标签的父标签一定要是 choose 标签
    --%>

            优秀

            良好

            及格

                    大于 60

                    大于 50

                    大于 40

                    其他小于 40

结果:

JSP中的JSTL 标签库

作用:遍历输出使用。

  1. 遍历 1 到 10 ,输出
    示例代码:

                第${i}行

JSP中的JSTL 标签库
2. 遍历 Object 数组
示例代码:

        ${ item }

JSP中的JSTL 标签库
  1. 遍历 Map 集合 示例代码:

     map = new HashMap();
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");
    // for ( Map.Entry entry : map.entrySet()) {
    // }
        request.setAttribute("map", map);
    %>

        ${entry.key} = ${entry.value}

结果:

JSP中的JSTL 标签库
2. 遍历 List 集合—list 放 中存放 Student 类 , 有属性 : 编号 , 用户名 , 密码 , 年龄 ,
电话信息
Student 类:
public class Student {
    //4. 编号,用户名,密码,年龄,电话信息
    private Integer id;
    private String username;
    private String password;
    private Integer age;
    private String phone;
}

jsp:


 studentList = new ArrayList();
    for (int i = 1; i

        编号
        用户名
        密码
        年龄
        电话
        操作

            ${stu.id}
            ${stu.username}
            ${stu.password}
            ${stu.age}
            ${stu.phone}
            添加、删除

欢迎关注公众号:愚生浅末

如图片失效等情况请参阅头条文章:https://www.toutiao.com/article/7137198159868002857/

Original: https://www.cnblogs.com/kohler21/p/16633703.html
Author: 愚生浅末
Title: JSP中的JSTL 标签库

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/599162/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 16 两个对象值相同(x.equals(y) == true),但却可以有不同的hashCode,这句话对不对?

    不对,如果两个对象x和y满足x.equals(y) == true,那么他们的哈希码应该相同。 根据hashCode方法协定:在每个重写了equals方法的类中,必须重写hashC…

    数据库 2023年6月6日
    079
  • 简单的2021年终总结

    当大家开开心心跨年的时候,我在补年终总结。 小时候恨不得时间过得快一点,现在不这么想了。 我的 2021年,都是平静、反复的一天天,没有出书、没有开源、没有跳槽、没有升官。没错,这…

    数据库 2023年6月6日
    085
  • MySQL数据类型和表操作

    MySQL数据类型和表修改 整型的定义 //创建有符号整数表 CREATE TABLE t1 (id TINYINT); //创建无符号整数表 CREATE TABLE t2 (i…

    数据库 2023年6月16日
    093
  • JavaWeb核心篇(3)——JSP,MVC,三层架构

    JavaWeb核心篇(3)——JSP,MVC,三层架构 在本篇文章中我们会学习到JSP,MVC,三层架构 虽然JSP已经快被时代所淘汰,但是在一些老旧的工作场所还是有在使用,所以了…

    数据库 2023年6月14日
    069
  • django-ckeditor上传图片到七牛云OSS

    参考信息 django-ckeditor本地图片上传功能:https://www.jianshu.com/p/882cf85b604fdjango+ckeditor+七牛云,图片上…

    数据库 2023年6月9日
    084
  • MySQL学习(3)—MySQL常用命令

    ps:此随笔基于mysql 5.7.*版本。 准备 net start mysql 启动MySQL服务 net stop mysql 关闭MySQL服务 mysql [-h exi…

    数据库 2023年5月24日
    083
  • MySQL InnoDB 锁的二三事

    近日, 在一个小型项目中, 遇到了一个触及我知识盲区的bug. 项目用的是MySQL 5.7.25, 其中有一张表 config_data, 包含四个字段, id, name, v…

    数据库 2023年6月11日
    0115
  • 简单的使用java操作hdfs

    一:创建maven项目 导入maven org.apache.hadoop hadoop-hdfs 2.7.6 org.apache.hadoop hadoop-common 2….

    数据库 2023年6月11日
    087
  • Centos7环境使用Mysql离线安装包安装Mysql5.7

    服务器环境:centos7 x64 需要安装:mysql5.7+ 1)检查mysql组合用户是否存在 2)若不存在,则创建mysql组和用户 版本选择,可以选择以下两种方式: 1)…

    数据库 2023年6月14日
    088
  • 23种设计模式之模板模式

    文章目录 概述 模版模式的优缺点 * 优点 缺点 模版模式的使用场景 模板模式的结构和实现 * 模式结构 模式实现 总结 ; 概述 模板模式指:一个抽象类中,有一个主方法,再定义1…

    数据库 2023年6月6日
    0104
  • 一篇文章带你掌握主流基础框架——Spring

    一篇文章带你掌握主流基础框架——Spring 这篇文章中我们将会介绍Spring的框架以及本体内容,包括核心容器,注解开发,AOP以及事务等内容 那么简单说明一下Spring的必要…

    数据库 2023年6月14日
    0101
  • Java面试题(七)–Spring Boot

    1、Spring Boot提供了哪些核心功能?(高频) 1、jar包方式运行 通过引入spring-boot-maven-plugin插件可以将springboot项目打包成一个可…

    数据库 2023年6月16日
    087
  • MySQL实战45讲 1,2

    01 | 基础架构:一条SQL查询语句是如何执行的? Server 层 所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。 存储引擎层负责数据的存储和提取。其架构模…

    数据库 2023年6月16日
    071
  • JavaWeb 05_JDBC入门及连接MySQL

    一、概念 *概念: Java DataBase Connectivity Java数据库连接, Java语言操作数据库* JDBC本质:其实是官方(sun公司)定义的一套操作所有关…

    数据库 2023年5月24日
    0101
  • CentOS 7 RabbitMQ 单机部署

    RabbitMQ版本:3.8.5 安装Erlang RabbitMQ的集群基于Erlang的分布式特性实现,所以需要先安装Erlang。 下载yum源配置脚本: curl -#LO…

    数据库 2023年6月9日
    093
  • 数据连接池

    dbcp 1.引入jar包 导入这两个jar包 下载jar包地址:Maven Repository: Search/Browse/Explore (mvnrepository.co…

    数据库 2023年5月24日
    092
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球