티스토리 뷰

jsp

chap16 커스텀 태그 만들기

일상다반ㅅㅏ 2018. 6. 9. 17:19

jsp를 사용했을 때

1
2
3
4
5
6
7
8
9
10
11
12
<%
    Member member = (MEmber)session.getAttribute("member");
    if( member != null ) {
%>
    로그인 한 상태
<%
    } else {
%>
    로그인 하지 않은 상태
<%
    }
%>
cs

jstl을 사용했을 때

1
2
3
4
5
6
<c:if text="${! empty sessionScope.member}">
    로그인 한 상태
</c:if>
<c:if test="${empty sessionScope.member}">
    로그인 하지 않은 상태
</c:if>
cs


커스텀 태그를 사용했을 때

1
2
3
4
5
6
<ct:login>
    로그인 한 상태
</ct:login>
<ct:login value="false">
    로그인 하지 않은 상태
</ct:login>
cs

커스탬 태그의 장점
- 재사용 : 한 번 작성한 커스텀 태그는 어떤 jsp 컨테이너에서도 사용 가능하다.
- 쉽고 단순한 jsp 코드 작성 : 자바 코드에 익숙하지 않은 개발자들도 커스텀 태그를 사용하면 쉽게 jsp 페이지를 작성할 수 있게 된다. 
- 코드 가독성 향상 : 커스텀 태그는 뚜렷한 의도를 갖고 사용하면 스크립트 코드를 줄일 수 있게 된다.

1
2
3
<jsp:attribute name="currentTime">
    <%= new jaba.util.Date() %<!-- 표현식 사용 시 에러 발생 -->
</jsp:attribute>

cs

<jsp:attribute>의 몸체에서는

 - 일반 템플릿 텍스트

 - EL

 - <jsp:include>액션 태그

를 사용할 수 있으며 스크립트 릿과 표현식은 사용 할 수 없다.


16장 실습코드 : https://github.com/KihyunLim/chap16.git