티스토리 뷰

오늘은 앞서 언급한 JSP에 사용되는 jstl에 대해서 알아보도록 하겠습니다.

 

JSTL(Java Standard Tag Library)을 사용하기 전에 앞서 EL(Expression Language)가 무엇인지를 알아야 합니다. 기본적으로 사용하게 된 배경은 JSP에서 자바 코드를 없애기 위해서로 알고 있습니다.

 

el 은 getter의 대용이며 JSP 2.0에서 새롭게 추가된 스크립트 언어입니다. 기존의 Script Tag의 표현식(Expression) Tag의 업그레이드된 출력테그라고 할 수 있습니다.

 

출력방법은 ${변수명} 형태로 사용합니다.

기존의 JSP의 자바 코드는 <%= 변수명 %> 으로 사용했습니다. 이러한 형태를 좀더 깔끔하게 정리 할 수 있습니다.

 

이러한 el의 제어문에서의 표현방식이 필요해서 사용하게 된 것이 JSTL입니다.

 

JSTL에 사용되는 제어문 종류

 

if문

<c:if test = "${fn:length(fileList) == 0}">

조건 만족시 출력될 내용

</c:if>

 

for문

<c:forEach var="list" items="${fileList}" varStatus="status">

${list.name}

</c:forEach>

 

switch case문 - 다중 조건 처리문

<c:choose>

<c:when test="{fn:length(fileList) == 0}">

리스트가 없습니다.

//조건이 충족시 메세지를 출력해준다. 

</c:when>

<c:when test="{fn:length(fileList) > 1}">

${fileList.name}    

//조건이 충족시 파일리스트의 이름을 출력해준다.

</c:when>

<c:otherwise>

${fileList.name} - ${fileList.date}    

//조건이 충족시 파일리스트의 이름 - 날짜를 출력해준다.

</c:otherwise>

</c:choose>

 

출력

<c:out value="${fileList.name}" />

 

변수 값 설정

<c:set value="value" var="list" scope="scope" />

 

변수 제거

<c:remove var="list" />

 

이정도가 core 라이브러리에서 대표적으로 많이 사용하는 JSTL 입니다.

 

core는 program의 기본적인 내용들을 지원하며 변수, 제어문, 출력 등에 사용됩니다.

 

이밖에도 xml 관련처리를 하는 xml과 ResourceBundle을 이용한 국제화 처리를 하는 국제화, JSP에서 DB 접근하기 위한 로직을 지원하는 데이터베이스가 있습니다.

 

 

출처 : http://docs.oracle.com/cd/E17802_01/j2ee/j2ee/1.4/docs/tutorial-update2/doc/JSTL3.html

 

JSP에 사용되는 JSTL에 대해서 간략하게 알아보았으며 추후 웹페이지에서 사용할 경우 다른 것들에 대해서도 알아보도록 하겠습니다.

댓글