JSTL 核心标签库 使用

JSTL ---[什么是JSTL,JSTL标签] 文章目录什么是JSTLJSTL环境搭建 什么是JSTL JSP标准标识库,使用JSTL可实现JSP页面的逻辑处理; 可用于编写各种动态JSP页面. JSTL(Java server pages standarded tag library,即JSP标准标签库)是由JCP(Java community Proces)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签库,并由Apache的Jakarta小组来维护。开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可. 阅读详情

JSTL 核心标签库标签共有13个,功能上分为4类:

1.表达式控制标签:out、set、remove、catch

2.流程控制标签:if、choose、when、otherwise

3.循环标签:forEach、forTokens

4.URL操作标签:import、url、redirect

使用标签时,一定要在jsp文件头加入以下代码:

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


下面分别对这些标签进行说明:

1. <c:out> 用来显示数据对象(字符串、表达式)的内容或结果

使用Java脚本的方式为:<% out.println("hello") %>  <% =表达式 %>

使用JSTL标签:<c:out value="字符串">,例如:

<body>
<c:out value="&lt要显示的数据对象(未使用转义字符)&gt" escapeXml="true" default="默认值"></c:out><br/>
<c:out value="&lt要显示的数据对象(使用转义字符)&gt" escapeXml="false" default="默认值"></c:out><br/>
<c:out value="${null}" escapeXml="false">使用的表达式结果为null,则输出该默认值</c:out><br/>
</body>

那么网页显示效果为:


2. <c:set> 用于将变量存取于 JSP 范围中或 JavaBean 属性中。下面的例子中假设已经有 Person.java 这个类文件。

 

复制代码
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@page contentType="text/html; charset=utf-8" %>

<jsp:useBean id="person" class="lihui.Person"></jsp:useBean>

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>JSTL测试</title>
</head>

<body>
<c:set value="张三" var="name1" scope="session"></c:set>
<c:set var="name2" scope="session">李四</c:set>
<c:set value="赵五" target="${person}" property="name"></c:set>
<c:set target="${person}" property="age">19</c:set>
<li>从session中得到的值:${sessionScope.name1}</li>
<li>从session中得到的值:${sessionScope.name2}</li>
<li>从Bean中获取对象person的name值:<c:out value="${person.name}"></c:out></li>
<li>从Bean中获取对象person的age值:<c:out value="${person.age}"></c:out></li>
</body>
</html>
复制代码

一共有四种语法格式,前两种是给jsp的范围变量赋值,后两个是给 javabean 变量赋值

效果如下:

 

3.<c:remove> 主要用来从指定的 jsp 范围内移除指定的变量。使用类似,下面只给出语法:

<c:remove var="变量名" [scope="page|request|session|application"]></c:remove>


4.<c:catch> 用来处理 JSP 页面中产生的异常,并存储异常信息

<c:catch var="name1">

      容易产生异常的代码

</c:catch>

如果抛异常,则异常信息保存在变量 name1 中。

5.<c:if>

<c:if test="条件1" var="name" [scope="page|request|session|application"]></c:remove>

例:

复制代码
  <body>
<c:set value="赵五" target="${person}" property="name"></c:set>
<c:set target="${person}" property="age">19</c:set>
<c:if test="${person.name == '赵武'}" var="name1"></c:if>
<c:out value="name1的值:${name1}"></c:out><br/>
<c:if test="${person.name == '赵五'}" var="name2"></c:if>
<c:out value="name2的值:${name2}"></c:out>
</body>
复制代码

效果:

6. <c:choose> <c:when> <c:otherwise> 三个标签通常嵌套使用,第一个标签在最外层,最后一个标签在嵌套中只能使用一次

例:

复制代码
    <c:set var="score">85</c:set>
<c:choose>
<c:when test="${score>=90}">
你的成绩为优秀!
</c:when>
<c:when test="${score>=70&&score<90}">
您的成绩为良好!
</c:when>
<c:when test="${score>60&&score<70}">
您的成绩为及格
</c:when>
<c:otherwise>
对不起,您没有通过考试!
</c:otherwise>
</c:choose>
复制代码

7.<c:forEach>

语法:<c:forEach var="name" items="Collection" varStatus="statusName" begin="begin" end="end" step="step"></c:forEach>

该标签根据循环条件遍历集合 Collection 中的元素。 var 用于存储从集合中取出的元素;items 指定要遍历的集合;varStatus 用于存放集合中元素的信息。varStatus 一共有4种状态属性,下面例子中说明:

View Code

显示效果:

8.<c:forTokens> 用于浏览字符串,并根据指定的字符串截取字符串
语法:<c:forTokens items="stringOfTokens" delims="delimiters" [var="name" begin="begin" end="end" step="len" varStatus="statusName"]></c:forTokens>

还是看个例子吧:

View Code

显示结果:

 9.URL 操作标签

(1)<c:import> 把其他静态或动态文件包含到 JSP 页面。与<jsp:include>的区别是后者只能包含同一个web应用中的文件,前者可以包含其他web应用中的文件,甚至是网络上的资源。

语法:<c:import url="url" [context="context"] [value="value"] [scope="..."] [charEncoding="encoding"]></c:import>

        <c:import url="url"  varReader="name" [context="context"][charEncoding="encoding"]></c:import>

 看个例子:

View Code

显示结果:

 

URL路径有个绝对路径和相对路径。相对路径:<c:import url="a.txt"/>那么,a.txt必须与当前文件放在同一个文件目录下。如果以"/"开头,表示存放在应用程序的根目录下,如Tomcat应用程序的根目录文件夹为 webapps。导入该文件夹下的 b.txt 的编写方式: <c:import url="/b.txt">。如果要访问webapps管理文件夹中的其他Web应用,就要用context属性。例如访问demoProj下的index.jsp,则:<c:import url="/index.jsp" context="/demoProj"/>.

(2)<c:redirect> 该标签用来实现请求的重定向。例如,对用户输入的用户名和密码进行验证,不成功则重定向到登录页面。或者实现Web应用不同模块之间的衔接

语法:<c:redirect url="url" [context="context"]/>

  或:<c:redirect url="url" [context="context"]>

            <c:param name="name1" value="value1">

       </c:redirect>

看个例子:

1 <%@ page contentType="text/html;charset=GBK"%>
2 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
3 <c:redirect url="http://127.0.0.1:8080">
4 <c:param name="uname">lihui</c:param>
5 <c:param name="password">11111</c:param>
6 </c:redirect>

则运行后,页面跳转为:http://127.0.0.1:8080/?uname=lihui&password=11111

(3)<c:url> 用于动态生成一个 String 类型的URL,可以同上个标签共同使用,也可以使用HTML的<a>标签实验超链接。

语法:<c:url value="value" [var="name"] [scope="..."] [context="context"]>

            <c:param name="name1" value="value1">

       </c:url>

或:<c:url value="value" [var="name"] [scope="..."] [context="context"]/>

看个例子:

View Code

显示:

jstl-1.2.jar免费下载 jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.j 立即下载

相关推荐

jstl-1.2.jar、jstl-api-1.2.jar、jstl-impl-1.2.jar三个包

java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config,以上错误可以使用以下策略试试,tomcat的lib文件夹下加入:jstl-1.2.jar、jstl-api-1.2.jar、jstl-impl-1.2.jar三个包。

JSTL详解

一JSTL概述        (1)什么是JSTL        JSTL是Java中的一个定制标记库集。JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功 能。JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它 还提供了一个框架来使用集成JSTL的自定义标签。        (2

错觉 3万+

433M无线遥控器EV1527协议解码实战:从逻辑分析到代码优化

本文详细解析了433M无线遥控器EV1527协议的实战解码过程。从使用逻辑分析仪抓取波形、理解同步头与数据位编码原理开始,逐步深入代码实现。文章重点对比了原始定时器轮询法的痛点,并提出了基于“边沿捕获+时间戳”的优化方案,构建了高效、可移植且具备抗干扰能力的解码引擎,最后分享了跨平台移植的核心技巧。

weixin_29168813的博客 926

JavaWeb JSTL

1.JSTL标签库概述 1.1.什么是JSTL标签库 JSTL全称为JSP Standard Tag Library,即JSP标准标签库。JSTL最初是一套Java官方的标签库解决方案,自从JavaEE 5之后被定义为标准的标签库。JSTL规范由Sun公司定制,Apache的Jakarta小组负责实现,目前的版本是JSTL1.2。 EL最初定义在JSTL1.0规范中,在JSP2...

ako881010的博客 666

从零构建机械臂规划栈:Pinocchio、OMPL与Ruckig的工程化融合实践

本文详细介绍了如何从零构建机械臂规划栈,通过融合Pinocchio、OMPL和Ruckig三大核心组件,实现高性能的机械臂运动规划与轨迹生成。文章深入探讨了技术选型、工程架构设计及实战优化技巧,特别针对逆解、路径规划和轨迹平滑等关键环节提供了实用解决方案,适用于工业场景中的高实时性需求。

weixin_29072299的博客 433

使用 VPN 访问太理内部网相关问题总结【太原理工大学】

电脑连接 VPN,访问校园内部网相关问题总结,太原理工大学。

m0_52861684的博客 9876

JSTL核心标签库

1. 1JSP书写的三种方式 脚本代码片段 格式:<% java代码 %> 代码生成java文件中的位置:service方法内部 脚本表达式 格式:<%=java变量或者具有返回值的方法%> 作用:用于输出数据的,相当于out.print(变量); 代码生成java文件中的位置:service方法内部 注意:表达式里面没有分号“;” 脚本声明 格式:&...

huangyh技术栈 1158

LangChain实战:用FAISS搭建本地文档问答系统(含Word文件处理避坑指南)

本文详细介绍了如何利用LangChain框架和FAISS向量数据库构建本地化智能文档问答系统,特别针对Word文档处理中的技术难点提供实用解决方案。通过模块化设计、本地化支持和多格式兼容,实现高效文档处理与精准问答,满足企业对数据隐私和安全的需求。

o4p5q6r7s的博客 408

JSTL标签及核心标签库

使用JSTL,可以像EL表达式那样不用编写Java代码就能开发出复杂的JSP页面。JSTL一般要结合EL表达式一起使用。 使用JSTL标签库之前,就必须在Wed项目的lib目录中加入两个jar包:jstl.jar和standard.jar,然后再在需要使用JSTL的JSP页面,加入支持JSTL的taglib指令,如下: &lt;%@ taglib uri="http://java.sun.co...

weixin_42044486的博客 772

QT应用编程: Win10系统下QT5.12搭建Android开发环境(配件齐全)

在win10系统下,搭建QT5.12.6 的Android开发环境。

7687

【Dify】知识库智能检索应用

本文介绍了一个基于大语言模型的知识库检索系统,实现从自然语言提问到智能回答的自动化流程。该系统通过知识检索节点定位相关信息,利用重排序模型优化结果,最后由大语言模型生成自然语言答案。核心模型包括InternLM2-7B和BCE重排序模型。工作流程包含输入问题、检索重排序、智能生成和答案输出四个阶段,适用于企业知识管理、客户支持、教育培训等多种场景,能显著提升信息检索效率和准确性。文章还提供了相关开发文档链接,涵盖AIGC工具平台搭建、常见问题解决等内容。

Mr数据杨 1000

JSTL 核心标签库

jsp诞生之初,程序员在HTML代码中嵌入过多的Java代码,这非常不利于JSP的维护和扩展。 JSTL(JavaServer Pages Standard Tag Library),即JSP标准标识库。几乎能够做到传统JSP脚本代码能做的任何事情。 JSTL标签库 核心标签库 基本输入输出、流程控制、迭代操作和URL操作。负责Web应用的常见工作,如:循环、表达式赋值、基本输入输出等 I18N...

qq_43635212的博客 290

5、AIX系统硬件管理与故障诊断全解析

本文全面解析了AIX系统的硬件管理与故障诊断方法,涵盖系统管理服务(SMS)的使用、设备兼容性配置、设备配置数据库结构、常用命令如cfgmgr、lsattr、smitty devices的操作详解,并深入介绍了错误日志管理机制,包括errdemon、errpt、errlogger等命令的应用。通过实际案例分析和流程图展示,帮助系统管理员掌握从问题怀疑到诊断执行再到日志清理的完整流程,同时提供注意事项与最佳实践,助力AIX系统的稳定运行与高效维护。

y2z3a4b5c的博客 62

JSTL标签库之核心标签

一、JSTL标签库介绍     JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的。使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二、JSTL标签库的分类 核心标签(用得最多)国际化标签(I18N格式化标签)数据库标签(SQL标签,很少使用)XML标签(几乎不用)JSTL函数(EL函数) 三、核心标签库使用说明   JS

咸的蛋疼的博客 6697

LCZ数据下载及处理-以重庆市为例(完整Python代码)

LCZ数据下载及处理-以重庆市为例(完整Python代码)

WW、forever的博客 611

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

5_JSTL核心标签库

通过之前的案例我们发现,就算在JSP中可以使用EL表达式取出域对象中的数据,但是仍然避免不了还是要在页面中书写一些java代码.这种嵌入JAVA代码的处理比较繁琐,容易出错,且代码不容易维护.1需要在项目中导入jstl-1.2.jar ,jstl在后台由java代码编写, jsp页面中通过标签进行使用, 使用标签时, 会自动调用后台的java方法,2标签和方法之间的映射关系在对应的tld文件中描述. 需要在页面中通过taglib指令引入对应的标签库, uri可以在对应的tld文件中找到。

wei7a7a7a的博客 633

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

[JSP]JSTL简介、核心标签库

1. 为什么提出JSTL以及JSTL的配置:     1) 即使在JSP中可以直接编写HTML、JavaScript代码,同时也有标准标签库和EL表达式的支持,但仍想在JSP中彻底放弃Scriptlet还是不可能的,因为最重要的流程控制语句和一些基本的编程元素还没有对应的JSP标签!!     2) JSTL就是为了让JSP彻底告别Scriptlet,JSTL全称是JSP Standard T

Lirx_Tech的专栏 2305

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

JSTL核心标签库的下载和配置问题

JSTL的下载和配置方法以及出现500的问题

weixin_54120050的博客 2829

jstl核心标签库的主要使用

JSTL JSTL简介 从JSP 1.1规范开始JSP就支持使用自定义标签,使用自定义标签大大降低了JSP页面的复杂度,同时增强了代码的重用性,因此自定义标签在WEB应用中被广泛使用。许多WEB应用厂商都开发出了自己的一套标签库提供给用户使用,这导致出现了许多功能相同的标签,令网页制作者无所适从,不知道选择哪一家的好。为了解决这个问题,Apache Jakarta小组归纳汇总了那些网页设计人员经常遇到的问题,开发了一套用于解决这些常用问题的自定义标签库,这套标签库被SUN公司定义为标准标签库(The Jav

虚空掠夺者~ 754

JSTL的核心标签库使用

1. jstl标签的基本概述 JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样, 也是要放到jsp页面中的脚本代码。JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是它的核心库Core 标签库 标签库的URI 前缀 Core http://java.sun.com/jsp/jstl/core c I18N (过时了) http://java.sun.com/

克豪的博客 1607

JSTL 核心标签库使用

JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签:out、set、remove、catch 2.流程控制标签:if、choose、when、otherwise 3.循环标签:forEach、forTokens 4.URL操作标签:import、url、redirect 使用标签时,一定要在jsp文件头加入以下代码: "c" uri="http://java.su

long1234long123的博客 345
上一篇: LINUX重启MYSQL的命令
下一篇: linux 后台日志 mysql 错误异常解释
OnePiece_Sky
博客等级 码龄15年 9粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值