병갈이 블록

커스텀 태그 본문

IT(Old)/JSP 공부 기록

커스텀 태그

woojang 2017. 7. 4. 17:00

태그 파일에서 사용가능한 디렉티브.(<%@ 로 시작하는...)

 tag

 JSP의 page디렉티브와 동일.

 taglib

 태그 파일에서 사용할 태그 라이브러리.(JSP에서 사용하는 방법과 동일)

 import

 JSP와 사용방법 동일.(단, 임포트하는 페이지는 태그파일 문법으로 작성되어야함.)

 attribute

 커스텀 태그로 사용할 때 입력받을 속성 명시.

 variable

 jsp파일에서 EL변수로 사용할 변수에 대한 정보를 지정.



tag

 body-content


 empty : 태그의 몸체가 없다고 설정.(즉, 사용시 <태그명/>형태로 사용됨.>

 tagdependent : 몸체 사용. html태그만 먹힘.(표현식, EL을 문자열로 인식..)

 scriptless : 몸체 사용. html태그, EL 사용가능.(표현식 에러.)

 **표현식, 스크립트릿은 태그 몸체에서 사용불가능.


 pageEncoding

 

 page디렉티브의 pageEncoding과 동일. 

(사용할 페이지의 인코딩값과 같거나 호환이 되어야함.)

 

 dynamic-attribute

 동적 속성 사용시 사용될 Map객체의 변수 이름을 지정.

 display-name

 외부에 사용될 태그의 이름 지정. 미지정시 기본값인 파일이름(.tag 제외)을 사용.

 description

 태그에 대한 설명

 import

 page 디렉티브와 동일. 

 isELIgnored

 page 디렉티브와 동일.  

 deferedSyntaxAllowedAsLiteral

 page 디렉티브와 동일.  

 trimDirectiveWhitespaces

 page 디렉티브와 동일.  

 attribute

 name

 태그에서 사용될 속성 이름 지정. 태그 파일에서 EL이나 스크립트 변수로 사용됨.

 required

 필수요소 여부 지정.(기본값 true. true-필수사항 false-선택사항)

 type

 속성으로 사용될 값을 타입 결정. 완전한 클래스 주소 입력.( ex> "java.lang.Integer" )

 rtexprvalue

 속성값을 표현식으로 사용할 수 있는지 여부.(기본값 true) 

 fragment

 

jsp페이지에서 <jsp:attribute> 액션 태그로 속성값 전달시 true로 사용.

**true 설정 시 -> 

rtxprvalue="true" , type="javax.servlet.jsp.tagext.JspFragment"로 된다.

 

 description

 속성에 대한 설명

 variable

 name-given

 

 호출한 페이지에서 사용할 수 있는 변수의 이름. 

 (같은이름으로 양쪽 페이지에서 사용가능. 영역은 scope설정에 따라 다름.)

 

 variable-class

 사용될 변수의 타입. 완전한 클래스 주소형태를 입력.

 scope

 

 AT_BEGIN : 시작태그부터 페이지 끝까지

 NESTED : 태그 몸체내에서만.

 AT_END : 종료태그부터 페이지 끝까지.

 

 name-from-attribute

 호출페이지에서 변수 이름을 지정할 속성의 이름을 지정. attribute의 name속성의 값과 같아야한다.

 alias

 name-from-attribute에서 만들어진 변수를 태그파일 내에서 사용하기 위한 변수 이름.


** 태그파일의 위치.

: WEB-INF/tags 및 그 하위폴더에 위치. 

페이지에 참조시. <%@ taglib prefix="문자" tagdir="/WEB-INF/tags" %> 형태로 참조.


** attribute 디렉티브.

: 자료를 전달받기 위해 태그에 사용될 속성을 지정하고 관련된 규칙을 정한다.

- 태그 사용시 name에 지정한 속성으로 값 전달.

- 전달된 값은 name 속성에 지정한 이름에 전달되며 태그파일 내에서 변수로 사용됨.

-- jsp --

<tf:usetag title="${1}" />    //title속성에 값 "1"을 전달.


-- 태그파일 --

<%@ attribute name="title" ... %>        

<%= title * 30 %>        //title 변수로 전달받은 값을 연산 후 출력.

'IT(Old) > JSP 공부 기록' 카테고리의 다른 글

갑작스런 엑박 해결.  (0) 2017.08.03
리플렉션에 관해서...링크  (0) 2017.07.16
LONG VARCHAR타입(큰~) 자료형 읽어오기  (0) 2017.07.01
JDBC 등록 과정  (0) 2017.06.30
JDBC 드라이버 클래스 이름  (0) 2017.06.30
Comments