【JavaWeb】JSTL标签库
JSTL标签库
JSTL标准标签库;
JSTL用于简化JSP开发,提高代码的可读性与可维护性;
JSTL由SUN(Oracle)定义规范,由Apache Tomcat团队实现;
引用JSTL核心库
- 核心标签库(Core)是JSTL最重要的标签库,提供了JSTL的基础功能
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>- JSTL核心标签库在taglibs-standard-impl.jar由META-INF/c.tld定义
条件判断
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<%
int x = 15;
request.setAttribute("x", x);
%>
<c:if test="${ requestScope.x > 0 && requestScope.x <= 10 }">
<div style="color:blue;font-weight:bold;">1-10之间的整数</div>
</c:if>
<c:if test="${ requestScope.x > 10 && requestScope.x <= 20 }">
<div style="color:red;font-weight:bold;">11-20之间的整数</div>
</c:if>
</body>
</html>
多重条件判断
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<c:choose>
<c:when test="${ param.day == 'MONDAY' }">
<h2 style="color:blue;">星期一</h2>
</c:when>
<c:when test="${ param.day == 'TUESDAY' }">
<h2 style="color:blue;">星期二</h2>
</c:when>
<c:when test="${ param.day == 'WEDNESDAY' }">
<h2 style="color:blue;">星期三</h2>
</c:when>
<c:when test="${ param.day == 'THURSDAY' }">
<h2 style="color:blue;">星期四</h2>
</c:when>
<c:when test="${ param.day == 'FRIDAY' }">
<h2 style="color:blue;">星期五</h2>
</c:when>
<c:when test="${ param.day == 'SATURDAY' }">
<h2 style="color:blue;">星期六</h2>
</c:when>
<c:when test="${ param.day == 'SUNDAY' }">
<h2 style="color:blue;">星期日</h2>
</c:when>
<c:otherwise>
<h2 style="color:red;">内容不对哦!</h2>
</c:otherwise>
</c:choose>
</body>
</html>
遍历循环
MonthServlet.java
package jstl;
import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class MonthServlet
*/
@WebServlet("/month")
public class MonthServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public MonthServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Set<String> setMonths = new HashSet();
setMonths.add("January");
setMonths.add("February");
setMonths.add("March");
setMonths.add("April");
setMonths.add("May");
request.setAttribute("months", setMonths);
request.getRequestDispatcher("/month.jsp").forward(request, response);
}
}
month.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:forEach items="${requestScope.months }" var="c" varStatus="idx">
<h2>${idx.index + 1} —— ${c }</h2>
</c:forEach>
</body>
</html>
c:out
- 属于核心标签库(Core)
<c:out value="${nothing}" default="无"></c:out>(nothing=null)将原本为null的值转义为"无"<c:out value="${html}" escapeXml="true"></c:out>浏览器不进行解释,将html源代码显示
fmt格式化标签库
- fmt格式化标签库URI:
http://java.sun.com/jsp/jstl/fmt <fmt:formatDate value="" pattern="">格式化日期标签<fmt:formatNumber value="" pattern="">格式化数字标签
formatDate pattern
| yyyy | 四位年 |
| ---- | -------- |
| MM | 两位月 |
| dd | 两位日 |
| HH | 24小时制 |
| hh | 12小时制 |
| mm | 分钟 |
| ss | 秒数 |
| SSS | 毫秒 |
formatNumber pattern
- "0.00":保留两位小数
- "0,000.00":三位一分隔,保留两位小数
【JavaWeb】JSTL标签库的更多相关文章
- JavaWeb基础—EL表达式与JSTL标签库
EL表达式: EL 全名为Expression Language.EL主要作用 获取数据(访问对象,访问数据,遍历集合等) 执行运算 获取JavaWeb常用对象 调用Java方法(EL函数库) 给出一 ...
- JavaWeb学习篇之----自定义标签&&JSTL标签库详解
今天来看一下自定义标签的内容,自定义标签是JavaWeb的一部分非常重要的核心功能,我们之前就说过,JSP规范说的很清楚,就是Jsp页面中禁止编写一行Java代码,就是最好不要有Java脚本片段,下面 ...
- JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)
1.JSP常用标签 * 只要支持JSP文件,常用标签有可以直接使用 * 格式: jsp:xxxx * jsp:forward ,完成jsp页面的转发 * page属性:转发的地址 <% requ ...
- javaweb学习总结(二十八)——JSTL标签库之核心标签
一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...
- JavaWeb总结(七)—JSTL标签库
一.JSTL标签库介绍 JSTL标签库的使用时为了弥补HTML标签的不足,规范自定义标签的使用而诞生的.使用JSTL标签的目的是不希望在JSP中出现Java逻辑代码. 二.JSTL标签库的分类 1.核 ...
- javaWeb学习总结(9)- JSTL标签库之核心标签
一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...
- JavaWeb(五)之JSTL标签库
前言 前面介绍了EL表达式,其实EL表达式基本上是和JSTL核心标签库搭配一起使用才能发挥效果的.接下来让我们一起来认识一下吧! 在之前我们学过在JSP页面上为了不使用脚本,所以我们有了JSP内置的行 ...
- JAVAWEB开发之JSTL标签库的使用、 自己定义EL函数、自己定义标签(带属性的、带标签体的)
JSTL JSTL简单介绍: JSTL的全称:JSP Standard Tag Library,JSP标准标签库 JSTL的作用: 提供给Java Web开发者一个标准通用的标签函数库 和E ...
- JavaWeb学习笔记(九)—— JSTL标签库
一.JSTL概述 1.1 什么是JSTL JSTL是apache对EL表达式的扩展(也就是说JSTL依赖EL),JSTL是标签语言!JSTL标签使用以来非常方便,它与JSP动作标签一样,只不过它不是 ...
随机推荐
- C++ 深入浅出工厂模式(进阶篇)
介绍 前文初始篇C++ 深入浅出工厂模式(初始篇),主要阐述了简单工厂模式.工厂方法模式和抽象工厂模式的结构.特点和缺陷等.以上三种方式,在新增产品时,要么修改工厂类,要么需新增具体的工厂类,说明工厂 ...
- arcgis api for javascript 学习(三) 调用发布地图信息,并将地图属性信息输出到Excel表中
吐血推荐:网上搜了很久关于webgis地图属性表输出到Excel表,并没能找到相关有价值的信息,在小白面前,这就是一脸懵x啊!网上要么是关于前端如何在页面上直接导出excel,和webgis半毛钱关系 ...
- 射频IC卡和IC卡读卡器的成本分析
当今射频IC卡和IC卡读卡器的种类繁多,很多人问IC卡读卡器多少钱,那么如何在满足我们需求的情况下最大的节省成本呢.下面就各种射频IC卡和IC卡读卡器来分析下各自的成本. ...
- SQL Server查询数据库表字段类型
select b.name,a.name,c.name,a.xprec,a.xscalefrom syscolumns aleft outer join sysobjects b ON a.id=b ...
- Linux-3.14.12内存管理笔记【构建内存管理框架(1)】
传统的计算机结构中,整个物理内存都是一条线上的,CPU访问整个内存空间所需要的时间都是相同的.这种内存结构被称之为UMA(Uniform Memory Architecture,一致存储结构).但是随 ...
- bootrom/spl/uboot/linux逐级加载是如何实现的?
关键词:bootrom.spl.uboot.linux.mksheader.sb_header.mkimage.image_header_t等等. 首先看一个典型的bootrom->spl-&g ...
- rasa结合kashgari训练数据时,out of memory错误
这两天新搬办公室,网络不好用,将就了.博客园也上不了,github也上不了了,工作效率降低不少.今天遇到同事使用rasa用机器人项目的问题,一个4核的Tesla K80 GPU,性能照说不差,但一运行 ...
- request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/"
String path = request.getContextPath(); String basePath = request.getScheme()+"://"+reques ...
- Yet Another Broken Keyboard
time limit per test2 secondsmemory limit per test256 megabytesinput: standard inputoutput: standard ...
- python--基础知识点梳理(之数据结构)
数据结构: # 按逻辑结构(面向问题)分为:集合结构.线性结构.树形结构.图形结构 # 按物理结构(面向计算机)分为: # 顺序存储结构(把数据元素放在地址连续的存储单元中,数据间的逻辑关系和物理关系 ...