文档章节

JSTL核心标签库

萧小蚁
 萧小蚁
发布于 2015/06/03 01:50
字数 577
阅读 20
收藏 0
<%@ page language="java" import="java.util.*,model.*" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>JSP JSTL标准标签库</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
    <h3>JSTL核心标签库</h3>
    
    <%
    	pageContext.setAttribute("abc", null);
    	pageContext.setAttribute("name", "monkey");
    	pageContext.setAttribute("hello", "<h1>JSTL Core 标签</h1>");
     %>
     <h3>out标签</h3>
    c:out--><c:out value="zhangsan"/><br>
    <c:out value="${abc }">wangwu</c:out><br>
    <c:out value="${abc }" default="lisi"/><br>
    <c:out value="${name }"></c:out>
    <c:out value="${hello }" escapeXml="false">ljiu</c:out>
    <hr>
    
    <h3>set标签</h3>
    <c:set value="java" var="test"/>
    ${test }<br>
    
    <c:set var="test1">
    	hello jstl
    </c:set>
    ${test1 }<br>
    
    c:set标签存储值到JavaBean属性中:
    <jsp:useBean id="stu" class="model.Student"></jsp:useBean>
    <c:set value="1001" target="${stu }" property="id"></c:set>
    <c:set value="zhangsan" target="${stu }" property="name"></c:set>
    ${stu.id }--->${stu.name }<br>
    
    <c:set target="${stu }" property="id">1002</c:set>
    <c:set target="${stu }" property="name">simaguang</c:set>
    ${stu.id }--->${stu.name }<br>
    
    <%
    	pageContext.setAttribute("msg", "这是pageContext的数据");
    	request.setAttribute("msg", "这是request的数据");
    	session.setAttribute("msg", "这是session的数据");
    	application.setAttribute("msg", "这是application的数据");
    	
    	List<String> list1=new ArrayList();
    	list1.add("beijing");
    	list1.add("tianjin");
    	list1.add("shanghai");
    	list1.add("xi'an");
    	request.setAttribute("list1", list1);
    	
    	Student stu1=new Student(1001,"zhangsan");
    	Student stu2=new Student(1002,"lisi");
    	List<Student> list2=new ArrayList();
    	list2.add(stu1);
    	list2.add(stu2);
    	request.setAttribute("list2", list2);
    	
    	String str="welcome to Tianjin";
    	request.setAttribute("str", str);
     %>
     
      ${pageScope.msg }<br>
      c:remove标签:<br>
      <c:remove var="msg"/>
      ${requestScope.msg }
      ${pageScope.msg }<br>
      
      c:catch标签:<br>
      <c:catch var="info">
      	<%
      		out.print(10/0);
      	 %>
      </c:catch>
      ${info }<br>
      
      c:choose、c:when、c:otherwise 标签:<br>
      <c:choose>
      		<c:when test="${5<4 }">hello</c:when>
      		<c:when test="${3>2 }">world</c:when>
      		<c:otherwise>!</c:otherwise>
      </c:choose>
      <br>
      
      c:foreach标签:<br>
      <c:forEach begin="1" end="10" step="2" var="i">
      	${i }
      </c:forEach>
      <br>
      
      c:forEach迭代集合对象:<br>
      <c:forEach items="${list1 }" var="address">
      	${address }
      </c:forEach>
      <br>
      
      c:foreach迭代JavaBean对象:<br>
      <c:forEach items="${list2 }" var="student" varStatus="status">
      	${status.first}-->${status.last}-->${status.index }-->${status.count }-->${student.id }---->${student.name }<br>
      </c:forEach>
      <br>
      
      <table>
      	<tr>
      		<th>ID</th>
      		<th>Name</th>
      	</tr>
      	<c:forEach items="${list2 }" var="student" varStatus="status">
      		<c:if test="${status.index%2==0 }">
      			<tr bgcolor="red">
      		</c:if>
      		<c:if test="${status.index%2!=0 }">
      			<tr bgcolor="green">
      		</c:if>
      	
      		<td>${student.id }</td>
      		<td>${student.name }</td>
      	</tr>
      	</c:forEach>
      </table>
      <hr>
      
      c:forTokens标签:<br>
      <c:forTokens items="${str }" delims=" " var="item">
       	${item }<br>
      </c:forTokens>
  </body>
</html>
package model;

public class Student {

	private int id;
	private String name;
	
	public Student(){
		
	}
	public Student(int id,String name){
		this.id=id;
		this.name=name;
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
}


© 著作权归作者所有

上一篇: EL表达式
萧小蚁

萧小蚁

粉丝 99
博文 279
码字总数 192339
作品 0
海淀
程序员
私信 提问
JavaWeb12-HTML篇笔记(二)

Ø 为什么学习JSTL: JSTL和EL结合 替换页面中<%%> Ø JSTL版本: JSTL1.0 :不支持EL表达式. JSTL1.1 和 1.2 :支持EL表达式. Ø JSTL的标签库:包含了五类标签. core(核心标签),fmt(国际化标签)...

我是小谷粒
2018/05/28
0
0
初识 JSP---(JSTL)

JSTL jsp标准标签库(jstl)是一个JSP标签集合,它封装了jsp应用的通用核心功能。 JSTL支持通用的、格式化的任务。比如:迭代、条件判断、XML文档操作、国际化标签、SQL标签。除了这些它还提...

姜白告
2018/08/03
0
0
JSTL 标签 判断参数是否为空

在项目中使用 JSP 作为页面视图层,现在需要判断某个字段是否为空,空就不显示,不为空呢则显示。 在这里可以使用 JSP 的标准标签库 JSTL 中的核心标签 <c:if> 判断参数是否为空。 首先引入核...

举个_栗子
2018/07/07
75
0
【J2EE】- JSP自定义标签

用途:在进行JSP页面显示处理的时候,有时候JSTL/Struts/Spring提供的标签库并不能满足项目中显示的需求,特别是对一些要求比较高的定制化服务中,可以使用自定义的标签库去处理。 JSP自定义...

ZeroneLove
03/03
19
0
标准标签库(JSTL)基础

JSTL简介 从JSP 1.1规范开始JSP就支持使用自定义标签,使用自定义标签大大降低了JSP页面的复杂度,同时增强了代码的重用性,因此自定义标签在WEB应用中被广泛使用。许多WEB应用厂商都开发出了...

晨曦之光
2012/05/16
356
0

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
昨天
65
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
昨天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
昨天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部