自定义标签是,用户定义自己的处理的tag的机制。
JSTL是,JSP用标准自定义标签。从JSTL Ver.1.2开始成为JavaEE5的子集。比较有名的是Glassfish。Tomcat上开发的话,需要自己配置JSTL。
 
1、JSTL的提供形式
   自定义标签通常有下述两部分内容:
    - Tag类文件
    - TLD (tag library descriptor)
 
2、JSTL的使用步骤
   自定义标签的jar文件下载(地址:https://jstl.java.net/)后,按如下顺序使用:
    1)把JAR文件放到项目的lib里
    2)做成只包含web-app要素的web.xml文件,以防止命令行上的错误输出。
       例:
        <web-app xmlns="http://java.sun.com/xml/ns/javaee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
           version="2.5">
 
        </web-app>
3)jsp文件里定义taglib。
   例:<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
   这里,
    
- prefix属性:JSP里使用JSTL时的前缀。习惯上用“c”。
    
- uri属性:识别JSTL的字符串。按照JSTL说明文档指定。
 
    4)使用taglib
       例:<c:out value="你好!"/>
 
   注意JSTL和Servlet/JSP的版本对应
    - JSTL 1.2  ⇒  JSP 2.1  (Tomcat6)
    - JSTL 1.1  ⇒  JSP 2.0  (Tomcat5)
    - JSTL 1.0  ⇒  JSP 1.2  (Tomcat4)
 
3、JSTL种类

1)JSTL种类

种类 说明 uri 前缀
core 循环处理、条件分支、变量的取得/设定等基本tag http://java.sun.com/jsp/jstl/core c
il8n 数值、日期的格式,国际化对应 http://java.sun.com/jsp/jstl/fmt fmt
xml XML文档的解析,XSL格式变换 http://java.sun.com/jsp/jstl/xml x
function 字符串、集合操作 http://java.sun.com/jsp/jstl/functions fn
SQL SQL的执行等DB操作 http://java.sun.com/jsp/jstl/sql sql

2)core tag

 功能 tag 说明
 变量  <c:set> 设置变量  
<c:remove> 删除变量
 流程控制    <c:if> 单一条件分支
<c:choose>
<c:when>
<c:otherwise>
复数条件分支
<c:forEach> loop
<c:forTokens> 字符串查找
 URL管理   <c:import> 文件import
<c:redirect> redirect
<c:url> URL生成。
其它   <c:out> 输出
<c:catch> 异常处理
<c:param> 参数指定

(1)
<c:set> tag

属性 必须 说明
var × 变量名。var和target指定任意一个。
target × 变量名。和proparty属性一起使用。使用javaBeans、Map的时候需要指定。
var和target指定任意一个。
property × 和target一起使用。指定javaBeans的属性名,或Map的key。
value ×
scope × 变量的有效范围「page、request、session、application」。
默认为page。

(2) <c:remove> tag

属性 必须 说明
var 变量名。
scope × 变量范围

(3) <c:if> tag

属性 必须 说明
test 条件
var × 保存结果(true/false)的变量名。
scope × 变量范围「page、request、session、application」。
默认是page

剩下有空时再追加。。。。

JSP基本_JSTL的更多相关文章

  1. java攻城师之路--复习java web之jsp入门_El表达式_JSTL标签库

    JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...

  2. 复习java web之jsp入门_El表达式_JSTL标签库

    JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...

  3. Java精选笔记_JSTL(JSP标准标签库)

    JSTL(JSP标准标签库) JSTL入门 JavaServer Pages Standard Tag Library:JSP标准标签库 在JSP中可以通过Java代码来获取信息,但是过多的Java代 ...

  4. myeclipse学习总结一(在MyEclipse中设置生成jsp页面时默认编码为utf-8编码)

    1.每次我们在MyEclispe中创建Jsp页面,生成的Jsp页面的默认编码是"ISO-8859-1".在这种情况下,当我们在页面中编写的内容存在中文的时候,就无法进行保存.如下图 ...

  5. jsp前端实现分页代码

    前端需要订一page类包装,其参数为 private Integer pageSize=10; //每页记录条数=10 private Integer totalCount; //总记录条数 priv ...

  6. jsp中出现onclick函数提示Cannot return from outside a function or method

    在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...

  7. jsp页面无法识别el表达式的解决方案

    今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...

  8. 浅谈JSP中include指令与include动作标识的区别

    JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...

  9. 浅谈JSP注释

    HTML注释 JSP文件是由HTML尿急和嵌入的Java程序片段组成的,所以在HTML中的注释同样可以在JSP文件中使用.注释格式:<!--注释内容--> <!-- 欢迎提示信息! ...

随机推荐

  1. OSI七层

    应用层 应用程序的通信服务 telnet.HTTP.FTP.NFS.SMTP 表示层 定义数据格式和加密 加密.ASCII 会话层 如何开始.控制.结束一个会话,包括多个双向消息的控制和管理,以便在只 ...

  2. Eclipse使用Maven创建Web时错误:Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webap

    网上也有好多方法我没有试成功,不过我将maven的conf setting.xml里的 阿里镜像给注释就可以了,你们也可以试试

  3. ef-codefirst方式配置实体类,生成数据库

    做项目的时候,如果我们如果用orm方式来做数据库持久化操作的话.微软官方首先会向我们推荐ef,而我们用ado.net的话,似乎也需要建立实体类来接传值,那么我们用codefirst就有一举两得的效果了 ...

  4. Unicode String to a UTF-8 TypedArray Buffer in JavaScript

    https://coolaj86.com/articles/unicode-string-to-a-utf-8-typed-array-buffer-in-javascript/

  5. Kafka参数详解

    一.相关参数配置 System 系统参数 #唯一标识在集群中的ID,要求是正数. broker.id=0 #服务端口,默认9092 port=9092 #监听地址,不设为所有地址 host.name= ...

  6. Linux打开TCP BBR拥塞控制算法

    要求内核为4.9以上,如果不是,请升级内核. modprobe tcp_bbr echo "tcp_bbr" >> /etc/modules-load.d/module ...

  7. MySQL客户端管理

    mysql -P3306 -h localhost -u root -p 分别是:端口  服务器 用户名 有密码(这里可以先不用输入,带这个参数表示有密码,密码在打开客户端后输入,也可以在这里直接输入 ...

  8. jdk环境变量及1.6官方下载地址

    jdk1.6: http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javas ...

  9. return的一种用法:如果当前判断为true则跳出这个方法。

    package rom; import java.lang.*; /* * return的一种用法:如果当前判断为true则跳出这个方法. */ public class Xamle_5 { stat ...

  10. python库pandas

    由于在机器学习中经常以矩阵的方式来表现数据,那么我们就需要一种数据结构来存储和处理矩阵.pandas库就是这样一个工具. 本文档是一个学习笔记,记录一些常用的命令,原文:http://www.cnbl ...