JSTL Core tag(2)
코어라이브러리에 대해 알아보겠습니다.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
위의 코드는 core태그를 사용하기 위한 코드입니다. prefix로 core의 머릿글자인 c를, uri로 어떤 라이브러리를 쓸 것인지를 넣습니다.
core 태그에는 여러가지 기능들이 있는데 그 중 choose, redirect, out에 대해 알아보겠습니다.
set, if, forEach가 궁금하다면 밑의 링크를 확인해주세요.
https://nancording.tistory.com/64
JSTL Core tag(1)
코어라이브러리에 대해 알아보겠습니다. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 위의 코드는 core태그를 사용하기 위한 코드입니다. prefix로 core의 머릿글자인 c를, uri로 어떤 라..
nancording.tistory.com
1. choose
choose는 java의 switch의 기능이며, <c:when>을 통해 위부터 아래로 순서대로 참인 경우에 연산을 하는 방식입니다.
예제를 통해 알아보겠습니다.
<c:set var="score" value="95"/> //점수설정
<c:choose>
<c:when test="${score >= 90 }">
<p>A</p>
</c:when>
<c:when test="${score >= 80 }">
<p>B</p>
</c:when>
<c:when test="${score >= 70 }">
<p>C</p>
</c:when>
<c:otherwise>
<p>D</p>
</c:otherwise>
</c:choose>
점수에 따른 등급처리를 코드로 나타내보았습니다.
<c:set>을 통해 score라는 변수를 생성했고 그 값은 95점입니다.
예제를 실행시켜 어떤 값이 확인해보겠습니다.
A라는 결과값이 발생했습니다.
정리하자면, when에서는 조건식이 맞을때 성립되고 계속 거짓일 경우 맞는 조건식에 맞춰 수행합니다. 나머지를 표현할때는 <c:otherwise>를 이용합니다.
2. redirect
<c:redirect>는 말 그대로 리다이렉트를 합니다. response.sencRedirect()와 동일한 기능을 수행하며, 매개변수를 전달할 수 있습니다.
예제를 통해 확인하겠습니다.
<body>
<c:redirect url="test2.jsp">
<c:param name="name" value="kimbob" />
<c:param name="age" value="15" />
</c:redirect>
</body>
현재 실행하는 파일은 test.jsp이고, redirect를 통해 test2.jsp로 전송하면서 c:param을 통해 매개변수를 설정합니다.
아래는 실행결과입니다.
test2.jsp로 바로 실행되면서 name, age가 전달 된 것을 확인 할 수 있습니다.
3. out
<c:out>은 화면상의 출력기능입니다. 기본값 설정 기능 등을 제공하므로 더 편리한 사용이 가능합니다.
예제를 통해 확인해보겠습니다.
<body>
<c:set var="test" value="request" scope="request" />
request scope : <c:out value="${requestScope.test}" default="null"/><br>
application scope : <c:out value="${applicationScope.test}" default="null" /><br>
</body>
c:set을 통해 scope에 변수를 설정하고 c:out을 통해 출력을 설정했습니다.
c:out중에 기본값(default)을 설정할 수 있습니다.
출력결과입니다.
request scope에서는 c:set을 통해 변수를 설정했기 때문에 값이 나온 것을 확인 할 수 있지만, application에는 설정이 없어 default인 "null"값이 출력된 것을 확인 할 수 있습니다.