7.3.3 taglib指令

7.3.3 taglib指令

可以通过taglib指令在tag file中使用自定义标签

taglib指令语法

taglib指令的语法如下:

1
<%@ taglib uri="tagLibraryURI" prefix="tagPrefix" %>

taglib属性说明

  • uri属性用来指定与前缀相关联的标签库描述文件的绝对路径或相对路径。
  • prefix属性用来定义自定义标签的前缀。

使用taglib指令

使用taglib指令,你可以像下面那样使用不包含content body的自定义标签:

1
<prefix:tagName/>

当然,也可以使用包含content body的自定义标签:

1
<prefix:tagName>body</prefix:tagName>

tag file中的taglib指令和JSP页面中的taglib指令是一样的。

Demo

firstTag.tag

1
2
3
4
5
6
7
<%@ tag import="java.util.Date" import="java.text.DateFormat"%>
<%
DateFormat dateFormat =
DateFormat.getDateInstance(DateFormat.LONG);
Date now = new Date(System.currentTimeMillis());
out.println(dateFormat.format(now));
%>

这个标签文件将会返回一个格式化的日期字符串.

taglibDemo.tag

1
2
3
4
<%@ tag pageEncoding="utf-8"%>
<%@ taglib prefix="simple" tagdir="/WEB-INF/tags"%>
服务器日期:
<simple:firstTag />

taglibDemo.tag通过导入了firstTag.tag来显示服务器日期。

taglibDemoTest.jsp

1
2
3
<%@page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="easy" tagdir="/WEB-INF/tags"%>
<easy:taglibDemo />

taglibDemoTest.jsp调用了taglibDemo.tag来显示服务器日期.

浏览器显示效果

访问下面的URL可以查看这个JSP页面的效果:
http://localhost:8080/app07a/taglibDemoTest.jsp
显示效果如下:

1
服务器日期: 2019年4月12日