JSTL标签库-创新互联

一、JSTL简介

创新互联公司服务项目包括铁力网站建设、铁力网站制作、铁力网页制作以及铁力网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,铁力网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到铁力省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

JSTL的全称:JSP Standard Tag Libary,JSP的标准标签库

JSTL的作用:

  提供给Java web开发人员一个标准通用的标签函数库。

  和EL来取来传统直接在页面上嵌入Java程序的做法,以提供程序可读性、维护性和方便性。

JSTL的版本:

  JSTTL的主要版本是1.0、1.1和1.2。

  1.0版本EL表达式还没有纳入官方规范。

  1.0和1.2版本EL表达式已经纳入官方规范。

二、标签

输出常量和域范围中的变量(value属性,使用EL表达式)。

输出默认值(default属性)。

默认HTML标签不转义(escapeXML)。

属性名是否支持EL属性类型属性描述
valueObject指定要输出的内容
escapeXMLBoolean指定是否将>、<等特殊字符进行HTML编码转换后再进行输出,默认值是true。
defaultObject指定如果value属性的值为null时所输出的默认值

示例:输出常量

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
    
  

示例:输出域中的变量

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
    
    <%
    	request.setAttribute("name", "你好,世界");
     %>
     
  

示例:输出默认值

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
    
     
  

示例:输出HTML标签

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
   
   	超链接">
   
  

默认情况下,输出的是字符串,所以要加上escapeXml="false"属性。

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
   
   	超链接" escapeXml="false">
   
  

三、标签

向4个域中存入值(var value scope属性)。

设置web域中java.util.Map类型的属性对象或Javabean类型的属性对象的属性(target prperty value属性)。

属性名是否支持EL属性类型属性描述
valueObject用于指定属性值
var×String用于指定要设置的web域属性的名称
scope×String用于指定属性所在的web域
targetObject用于指定要设置属性的对象,这个对象必须是Javabean对象或java.utl.Map对象
propertyString用于指定当前要为对象设置的属性名称

示例:向4个web域对象存入值

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
   
   	
   
  
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
  
  	<%
  	request.setAttribute("name", "呵呵");
   %>
   
  
  
   
  	
   
  

示例:修改Javabean对象存入值

<%@page import="cn.vo.User"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
 
 <%
 	request.setAttribute("user", new User("你好","世界"));
  %>
 
 
 ${user.username }
 
  

四、标签

 标签用于删除各种web域中的值。

其语法格式如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
  
	
	${i}
	
	
	${i}
  

五、标签

标签用于捕获嵌套在标签体中的内容抛出的异常,其语法格式如下:

  

var属性用于标识标签捕获的异常对象,它将保存在page这个web域中。

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
		<%
			int i = 10 / 0;
		 %>
	  
  ${e.message }
  
  

六、标签

标签可以构造简单的"if-then"结构的条件表达式。

属性名是否支持EL 属性类型属性描述
testboolean决定是否处理标签体中的内容的条件表达式
var×String用于指定将test属性的之后定结果保存到某个web域中的某个属性的名称
scope×String指定将test属性的执行结果保存到那个web域中
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
  	
  		正确
  	
  
  

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	
  	
  		正确
  	
  	${x }
  
  

六、标签

标签用于指定多个条件选择的组合边界,它必须和标签一起使用。使用标签、这三个标签,可以构造类似“if-else”的复杂条件判断结构

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	
	
		
			i的值是10
		
		
			i的值不等于10
		
	
  
  

 

七、标签

标签用于对一个集合对象中的元素进行循环迭代操作,或者按照指定的次数重复迭代标签体中的内容。

属性名是否支持EL属性类型属性描述
var×String指定将当前迭代到的元素保存到page这个web域中的属性名称
varstatus×String记住用于保存迭代信息的对象
items任何支持的类型将要迭代的集合对象
beginint如果指定items属性,就从集合中的第begin个元素开始进行迭代,begin的索引值从0开始编码;如果没有指定items属性,就从begin指定的值开始迭代,直到end值结束迭代
endint参看begin属性的描述
stepint指定迭代的步长

示例:遍历数组

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	<%
		String[] str = {"哈哈","呵呵"};
		request.setAttribute("str", str);
	 %>
	
		${s}
	
	
		
	  
  

示例:遍历List集合

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	<%
		List list = new ArrayList();
		list.add("哈哈");
		list.add("呵呵");
		list.add("嘻嘻");
		request.setAttribute("list",list);
	 %>
	
		${i}
	
	
		
	  
  

示例:遍历Map集合

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	<%
		Map map = new HashMap();
		map.put("a", "aa");
		map.put("b", "bb");
		request.setAttribute("map",map);
	 %>
	
		${entry.key }
		${entry.value}
	
	
		
	  
  

示例:从1到10遍历

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
		${i}
	
		
  

示例:计算从1加到100的和

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	
		
	
	${sum }	
  

varStatus属性

记录迭代相关的信息

属性类型意义
indexnumber现在指到成员的索引
countnumber总共指到成员的总数
firstboolean现在指到的成员是否为第一个成员
lastboolean现在指到的成员是否为最后一个成员

示例:遍历10到100的偶数,每到第三个数,显示为红色

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
		
			
				${i }
			
			
				${i }
			
		
	
	
  

八、标签

在jsp页面进行URL的相关操作时,经常需要在URL地址后面附加一些参数。标签可以嵌套在以及标签内,为这些标签所使用的URL地址附加参数。

标签在为一个URL地址附加参数的时候,会自动对参数值进行URL编码。

九、标签

名称说明EL类型必须默认值
url一文件被包含的地址String 
context虚拟路径String
var存储被包含文件的内容(以String类型存入)×String
scopevar变量的jsp范围×Stringpage
charEncoding被包含文件之内容的编码格式String
varReader存储被包含文件的内容(以Reader类型存入)×String

haha.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>


  
    My JSP 'haha.jsp' starting page
    
	
	
	    
	
	
	

  
  
  
    哈哈
    
    
  

index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
  

将页面包含在变量之中

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
	
	${i }
	
	
  

传递参数

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>


  
    My JSP 'haha.jsp' starting page
    
	
	
	    
	
	
	

  
  
  
  ${param.haha}
    哈哈
    
    
  
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	
		
	
	
	${i }
	
	
  

十、标签

标签用于在jsp页面中构造一个URL地址,其主要目的在于实现URL重写。URL重写就是将会话标识号以参数形式附加到URL地址的后面。

其实,就是进行session的追踪。

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>


  
    JSTL标签库
  
  
  
	
	haha.jsp
  

十一、标签

用于实现请求重定向。

属性名是否支持EL属性类型属性描述
urlString指定要转发或重定向到的目标资源的URL地址
contextString当要使用相对路径重定向到哦同一个服务器下的其他web应用程序中的资源的时候,context属性指定其他web应用程序的名称

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


文章题目:JSTL标签库-创新互联
网页网址:http://myzitong.com/article/dciojj.html