我注释的很详细,内容都很简单,只是为了把核心语法展示,就不再做解释了。
结构图:
web.xml内容:
encoding="UTF-8"?>
index.jsp
index.jsp内容:
contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
page="/WEB-INF/taglibTest.jsp">
taglibtest.jsp内容:
contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
uri="/WEB-INF/test1.tld"%>
uri="/WEB-INF/test2.tld"%>
request.setAttribute("age","100");
%>
${tag1:getResult("翟天龙","100")}
name="${name}" age="100"
>
test1.tld内容:
?>
version="2.0">
0.1
ELUtils
getResult
util.Test1
String
getResult(java.lang.String,java.lang.String)
test2.tld内容:
encoding="UTF-8"?>
/p>
Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
1.0
1.1
right
http://www.norteksoft.com/cms/tags-nortek
getResult
util.Test2
jsp
name
true
true
age
false
false
test1.java内容:
package util;
public class Test1 {
public static String getResult(String name,String age){
return
"姓名:"+name+"
"+"年龄:"+age;
}
}
test2.java内容:
package util;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
public class Test2 extends TagSupport{
private String name;
private String age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int doStartTag() throws JspException {
try {
this.pageContext.getOut().write("姓名:"+name+"
"+"年龄:"+age);
} catch (IOException e)
{
e.printStackTrace();
}
return SKIP_BODY;
}
public int doAfterBody() throws JspException {
return
_BODY_AGAIN;
}
public int doEndTag()throws JspException{
return _PAGE;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}