2.Taglib的各种实例:
1)helloWorld:
注 意当你做下面的项目,首先选择还是老样子,做Dynamic Web project,但是当选择dynamic web module version版本时,过去我们选择2.3,这次我们选择2.4。注意不要错,否则做不过去。从这个例子里可以清楚地看出,标签的前缀greeter定位 配置文件的位置。标签本身Hello会在配置文件当中说明它对应哪一个类。
例 1.2.1
hello.jsp:
<%@ page contentType="text/html; charset=GBK" %>
<%@ taglib uri="/WEB-INF/tagExampleLib.tld" prefix="greeter" %>
<html>
<body>
<greeter:Hello/>
</body>
</html>
tagExampleLib.tld:(这是个Taglib项目所特有的文件,在WEB-INF目录下,在eclipse中,只需增加这个普通文本文件即可。)
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<taglib>
<tlibversion>1.0</tlibversion>
<jspversion>1.1</jspversion>
<shortname>mark-to-win</shortname>
<tag>
<name>Hello</name>
<tagclass>com.marktowin.HelloWorldTag</tagclass>
<bodycontent>empty</bodycontent>
</tag>
</taglib>
HelloWorldTag.java(eclipse中,这只是一个普通类而已,其中pageContext就对应着jsp的页面):
package com.marktowin;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
import java.io.*;
/*when type, directly type in TagSupport, can import jars, also you can use this to help you to memorize. */
public class HelloWorldTag extends TagSupport {
public int doStartTag() {
try {
this.pageContext.getOut().print("你好,马克-to-win World!");
} catch (IOException ex) {
ex.printStackTrace();
}
return this.SKIP_BODY;
}
}
更多请看:https://blog.csdn.net/qq_44638460/article/details/104148404