사용자 정의 태그 개발 단계


사용자 정의 태그 개발 단계:
클래스 1은 SimpleTag 인터페이스를 구현합니다. 이 클래스는 탭 처리 대상//탭 프로세서 또는 탭 대상이라고 합니다.
 public class IpTag implements SimpleTag {
     private PageContext pageContext;
     //Web    
     public IpTag(){
          System.out.println("IpTag()");
          System.out.println("  IpTag : " + this.hashCode());
     }
     //Web    
     public void setJspContext(JspContext pc) {
          System.out.println("setJspContext()");
          //     
          pageContext = (PageContext) pc;
     }
     //Web    
     public void doTag() throws JspException, IOException {
          System.out.println("doTag()");
          //  HttpServletRequest
          HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
          //     IP
          String ip = request.getRemoteAddr();
          //  out  
          JspWriter out = pageContext.getOut();
          //      
          out.write("<font color='red'><b>"+ip+"</b></font>");
     }


2/WEB-INF/에 *.tld 탭 설명 파일, JSP 엔진의 사용자 정의 탭에 대응하는 처리 클래스를 알립니다
<?xml version="1.0" encoding="UTF-8" ?>
  <taglib xmlns="http://java.sun.com/xml/ns/j2ee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
     version="2.0">
     <tlib-version>1.0</tlib-version>(         )
     <short-name>simple</short-name>(        )
     <uri>http://java.sun.com/jsp/jstl/simple</uri>(               /           )
     <tag>
          <name>ip</name>(       ,    )
          <tag-class>cn.itcast.web.jsp.tag.IpTag</tag-class>(                 )
          <body-content>empty</body-content>(                 ,
                                 empty     )


          <attribute>
                  <name>count</name>(   )
                  <required>true</required>(      ,true  ,false  )
                  <rtexprvalue>true</rtexprvalue>(          ,true     ,false     )
               <type>boolean</type>(    ,  )
              </attribute>


     </tag>

</taglib>


  
3은 단순하다.jsp 페이지에서 사용자 정의 탭 사용하기
<%@ page language="java" pageEncoding="UTF-8"%>
  <%@ taglib uri="http://java.sun.com/jsp/jstl/simple" prefix="simple"%>[  ,     ]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <body>
          IP (   ):<simple:ip/>
  </body>
</html>


좋은 웹페이지 즐겨찾기