【JavaWeb篇】JSTL相关知识点总结
创始人
2024-05-31 01:42:22
0

目录

为什么会有JSTL?

什么是JSTL?

如何理解JSTL标准标签库呢?

如何使用JSTL?

第一步:引入JSTL标签库对应的jar包。

第二步:在JSP中引入要使用标签库。(使用taglib指令引入标签库。)

第三步:在需要使用标签的位置使用即可。表面使用的是标签,底层实际上还是java程序。

JSTL的本质是什么?

JSTL原理剖析

源码解析:配置文件tld解析

JSTL的常用标签:


为什么会有JSTL?

        在此之前我们为了使得JSP中的java代码更加简洁,我们使用了EL表达式,EL表达式的主要作用是从域中取数据,但是有时候我们在JSP中也会书写其他Java代码,比如if判断啊或者for循环等等,那么这些代码的简化是无法用EL表达式完成的,所以我们就引入了JSTL,Java标准标签库;

        从上面的概念引入中我们可以得出,JSTL的作用:简化JSP中的java代码;

什么是JSTL?

  • Java Standard Tag Lib(Java标准的标签库)

  • JSTL标签库通常结合EL表达式一起使用。目的是让JSP中的java代码消失。

  • 标签是写在JSP当中的,但实际上最终还是要执行对应的java程序。(java程序在jar包当中。)

如何理解JSTL标准标签库呢?

        我们之前接触标签是在学习了HTML超文本标记语言是接触的,呢么标签是如何创造的呢?为什么会使用标签呢?我们之前学过将Java中常用的代码封装成一个方法,这样是为了在使用到这个方法的时候能避免重复书写一些复杂的代码,标签也是一样,你可以认为标签就是一个方法名,他的底层还是Java代码,知识在使用时为了简便,我们将这些重复的代码封装成了一个一个的标签;标签的底层还是Java代码,只是为了让我们程序员减少代码书写量而创建的一种简便用法;

如何使用JSTL?

  • 第一步:引入JSTL标签库对应的jar包。

    • 在IDEA当中怎么引入?

      • 在WEB-INF下新建lib目录,然后将jar包拷贝到lib当中。然后将其“Add Lib...”

      • 一定是要和mysql的数据库驱动一样,都是放在WEB-INF/lib目录下的。

      • 什么时候需要将jar包放到WEB-INF/lib目录下?如果这个jar是tomcat服务器没有的。

    • tomcat10之后引入的jar包是:

      • jakarta.servlet.jsp.jstl-2.0.0.jar

      • jakarta.servlet.jsp.jstl-api-2.0.0.jar

    • 第二步:在JSP中引入要使用标签库。(使用taglib指令引入标签库。)

      • JSTL提供了很多种标签,你要引入哪个标签????重点掌握核心标签库。

      • <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
        
        
    • 第三步:在需要使用标签的位置使用即可。表面使用的是标签,底层实际上还是java程序。

JSTL的本质是什么?

        上面已经说的很清楚了,JSTL的本质是Java代码,JSTL只是更好的将Java代码封装成了一个一个简便的标签;

JSTL原理剖析

  • <%@taglib prefix="c" uri="Oracle Java Technologies | Oracle" %> 以上uri后面的路径实际上指向了一个xxx.tld文件。 tld文件实际上是一个xml配置文件。 在tld文件中描述了“标签”和“java类”之间的关系。 以上核心标签库对应的tld文件是:c.tld文件。它在哪里。 在jakarta.servlet.jsp.jstl-2.0.0.jar里面META-INF目录下,有一个c.tld文件。

源码解析:配置文件tld解析

对该标签的描述catch 标签的名字org.apache.taglibs.standard.tag.common.core.CatchTag 标签对应的java类。JSP 标签体当中可以出现的内容,如果是JSP,就表示标签体中可以出现符合JSP所有语法的代码。例如EL表达式。对这个属性的描述var 属性名false false表示该属性不是必须的。true表示该属性是必须的。false 这个描述说明了该属性是否支持EL表达式。false表示不支持。true表示支持EL表达式。JSP....

JSTL的常用标签:

jstl中的核心标签库core当中有哪些常用的标签呢?

  • c:if

  • c:forEach

    • ${元素状态对象.count}

    •  ${i} 
  • c:choose c:when c:otherwise

青少年青年中年老年

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...