JSTL标签库之核心标签库

本文详细介绍了JSTL标签库的使用,包括核心标签、格式化标签、SQL标签、XML标签和JSTL函数等。重点讲解了核心标签库的使用方法,如<c:out>、<c:set>、<c:if>、<c:forEach>等,并通过实例演示了如何在JSP页面中应用这些标签。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、JSTL标签库介绍

    Web程序员能够利用JSTL和EL来开发Web程序,取代传统直接在页面上嵌入Java程序的做法,以提高程序的阅读性、维护性和方便性。

二、JSTL标签库的分类

核心标签(用的最多)

格式化标签(JSTL格式化标签用来格式化并输出文本、日期、时间、数字)

SQL 标签(提供了与关系型数据库(Oracle,MySQL,SQL Server等等)进行交互的标签)

XML 标签(库提供了创建和操作XML文档的标签)

JSTL 函数(JSTL包含一系列标准函数,大部分是通用的字符串处理函数)

三、核心标签库的使用。

我们必须要有两个jar包:jstl和standard,如果没有,可以在网上下载

首先我们要引入核心标签库。引入代码为:

<%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
常用的核心标签库
<c:out>用于在JSP中显示数据
<c:set>用于保存数据
<c:remove>用来删除数据
<c:cathch>用来处理产生错误的异常状况
<c:if>Java程序中的if作用一样
<c:choose><c:when>和<c:otherwise>的父标签
<c:when>判断条件是否成立
<c:otherwis><c:when>否定执行
<c:import>检索一个绝对或相对URL,然后将其内容暴露给页面
<c:foreach>迭代标签
<c:param>用来给包含或重定向的页面传递参数
<c:redirect>重定向一个新的URL
<c:url>使用可选的查询参数来创造一个URL

这里只给出一些代码实例,如果要详细了解可参考:http://www.runoob.com/jsp/jsp-jstl.html

<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
<jsp:useBean id="person" scope="request" class="com.luther.TestWeb.PersonBean"/>//这里导入了一个JavaBean
<html>
<head>
    <title>JSTL标签库的学习</title>
</head>
<body>
<hr/>
<%
    Map<String,String> map=new HashMap<>();
    request.setAttribute("map",map);
    List<String> list=new ArrayList<>();
    list.add("中国");
    list.add("美国");
    list.add("德国");
    request.setAttribute("list",list);
%>
<c:out value="c:out  相当于&lt%=%&gt的功能" escapeXml="false" default="如果value没有值则输出默认值"></c:out><br>
<c:out value="c:out  相当于&lt%=%&gt的功能,escapeXml 为true:忽略XML的XML中的特殊字符" escapeXml="true" default="如果value没有值则输出默认值 为true:忽略XML的XML中的特殊字符"></c:out>
<hr/>
<c:set value="${100*100}" var="count" scope="request"></c:set>
<c:out value="${count}使用c:set的好处就是他可以在赋值的时候进行计算,来给JavaBean对象来赋值"></c:out><br>
<c:set property="name" target="${person}">哈哈</c:set>
<c:out value="${person.name}"/><br>
<c:set property="key" value="map的值" target="${map}"/>
<c:out value="${map.key}"/>
<hr/>
<c:forEach items="${list}" var="per">
    <c:out value="${per}"/><br>
</c:forEach>
<hr/>
<c:if test="${count>2000}" var="bool" scope="request">
    <p><c:out value="${count}"/> </p>
    <p>${bool}</p>
</c:if>
<hr/>
<c:choose>
    <c:when test="${count>20000}">
        <p>大于20000</p>
    </c:when>
    <c:when test="${count>9999}">
        <p>大于9999</p>
    </c:when>
    <c:otherwise>
        <p>大大大小小小</p>
    </c:otherwise>
</c:choose>
<hr/>
<c:import url="http://www.baidu.com" var="baidu" scope="session" charEncoding="utf-8"/>
<c:out value="${baidu}"/>
<hr/>
<c:remove var="baidu" scope="session"/>
<c:out value="${baidu}"/>//这里会输出网站的源码
<hr/>
<c:catch var="exceptionNum">
    <% int i=9/0;%>
</c:catch>
<c:if test="${exceptionNum!=null}">
    <c:out value="异常为:${exceptionNum.message}"/>
</c:if>
<hr/>
<%--<c:redirect url="demo1.jsp" scope="request" var="n">
    <c:param name="name" value="你的名字"/>
</c:redirect>--%>


</body>
</html>

实例截图:

tips:格式化标签库,与下面的几个标签库,就不再这里展示了,可以参考上面的给出的参考文章。需要用到的时候,去查询就可以了,核心标签库应该掌握。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值