[tag lib] tld파일설정 및 커스텀 태그 정리
1. ~.tld 파일 설정
기본적으로 web.xml 에 taglib 를 등록하지만 WEB-INF/ 밑에 ~.tld 파일이 있을 경우 따로 설정하지 않아도 된다.
JSP에서는 tld파일의 taglib 태그의 uri 태그 값으로 불러와서 사용하면 됨
예) tld파일 : WEB-INF/ 밑에 있어야함
tld파일안에 : <uri>net.ucware.tags</uri>
jsp : <%@ taglib prefix="ast" uri="net.ucware.tags" %>
2. 커스텀 태그 정리 중....
HearderTag.java
public class DefaultConfigTag extends TagSupport {
private String var;
public void setVar(String var) {
this.var = var;
}
public int doStartTag() throws JspException {
String value = "aaa";
pageContext.setAttribute(var, value);
아니면
JspWriter out = pageContext.getOut();
ou.print("aaa");
return SKIP_BODY;
}
}
<exam:mutiply op1="2" start="1" end="9" >
</exam>
<exam:mutiply op1="2" start="1" end="9" >
${pageContext.op1} * ${pageContext.op2} = ${pageContext.op1 * pageContext.op2} <br> <=== 몸체라고함
</exam:multiply>
Return 값 종류
doStartTag()
SKIP_BODY : 몸체 내용을 처리하지 않는다
EVAL_BODY_INCLUDE : 몸체 내용을 처리한 결과를 출력한다.
doAfterBody()
EVAL_BODY_AGAIN 이면 몸체 다시 실행 do{ }while(조건) 처럼
SKIP_BODY : 몸체 내용을 처리하지 않는다