1 基本概念

  JSTL( JSP Standard Tag Library ) 被称为JSP标准标签库

  开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护 难度

 

2 使用方式

  下载JSTL的jar包并添加到项目中,下载地址为:https://tomcat.apache.org/download-taglibs.cgi

  在JSP页面中使用taglib指定引入jstl标签库,方式为:

  <!-- prefix属性用于指定库前缀 -->

       <!-- uri 属性用于指定库的标识 -->

  <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

 示例:

<1>

JSTL标签_Back end

 

<2>

 JSTL标签_Back end_02

 

 

3 常用核心标签

(1)输出标签

   <c:out></c:out> 用来将指定内容输出的标签

示例

JSTL标签_条件判断_03

 

 

(2)设置标签

   <c:set></c:set>用来设置属性范围值的标签

例子1:

JSTL标签_条件判断_04

 

 

例子2:

 JSTL标签_自定义标签_05

 

 

(3)删除标签

   <c:remove></c:remove>用来删除指定数据的标签 

  // TODO

(4)单条件判断标签

   <c:if test = "EL条件表达式">

    满足条件执行

  </c:if>

(5)多条件判断标签

  <c:choose>

    <c:when test="EL表达式">

      满足条件执行

    </c:when>

    ...

    <c:otherwise>

      不满足上述when条件时执行

    <c:otherwise>

  </c:choose>

 

(6)循环标签

  <c:forEach var="循环变量" items="集合">

    ...

  </c:forEach>

 

4 常用函数标签

  <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

 

5 常用格式化标签

  <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

 

6 自定义标签

  如果上面几个标签不能满足需求,程序员也可以自定义标签,步骤如下:

  编写标签类继承SimpleTagSupport类或TagSupport类并重写doTag方法或doStartTag方法



public class HelloTag extends SimpleTagSupport {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public void doTag() throws JspException, IOException {
JspWriter out = this.getJspContext().getOut();
out.println("自定义标签的参数为:" + name);
}
}


定义标签库文件(tld标签库文件)并配置标签说明文件到到WEB-INF下:



<tag>
<name>helloTag</name>
<tag-class>com.lagou.demo02.HelloTag</tag-class>
<body-content>empty</body-content>
<attribute>
<name>name</name>
<required>true</required>
</attribute>
</tag>


在JSP中添加taglib指令引入标签库使用:

<%@ taglib prefix="hello" uri="http://lagou.com" %>