<%@ taglib prefix="c" uri="jakarta.tags.core"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ⇐ core태그 사용을 위한 taglib 지시어선언변수선언의 4가지 방법
<c:set var="directVar" value="100" /> ⇐ 방법1 : 직접입력
<c:set var="elVar" value="${ directVar mod 5}" /> ⇐ 방법2 : EL사용
<c:set var="expVar" value="<%= new Date() %>" /> ⇐ 방법3 : 표현식 사용
<c:set var="betweenVar">변수값 요렇게 설정</c:set> ⇐ 방법4 : 태그사이에 값 지정
<h4>EL을 이용해 변수 출력</h4>
<li>directVar : ${ pageScope.directVar }</li>
<li>elVar : ${ elVar }</li>
<li>expVar : ${ expVar }</li>
<li>betweenVar : ${ betweenVar }</li>
[Note] scope 속성을 통한 영역지정이 없으므로 가장 좁은 page영역에 저장됨
형식 : <c:remove var="변수명" scope ="영역" />
<c:set var="scopeVar" value="Page Value" /> ⇐ 4가지 영역에 동일한 이름으로 저장
<c:set var="scopeVar" value="Request Value" scope="request" />
<c:set var="scopeVar" value="Session Value" scope="session" />
<c:set var="scopeVar" value="Application Value" scope="application" />
<li>scopeVar : ${ scopeVar }</li> ⇐ 영역명 지정없이 출력하면 가장 좁은 page영역이 선택됨
<c:remove var="scopeVar" scope="session" /> ⇐ 세션 영역의 속성 삭제
<c:remove var="scopeVar" /> ⇐영역을 지정하지 않으면 모든 영역의 속성이 삭제됨
형식 :<c:if test="조건" var="변수명" scope="영역"> 조건이 true일 때 출력할 문장
</c:if>
<c:set var="number" value="100" /> ⇐ 변수 선언
<c:choose>
<c:when test="${ number mod 2 eq 0 }"> ⇐ 2로 나눈 나머지가 0일때
${ number }는 짝수입니다. </c:when>
<c:otherwise> ⇐ 위 조건이 거짓일때(else와 동일한 역할)
${ number }는 홀수입니다. </c:otherwise>
</c:choose>
형식 :<c:url value="설정한 경로" scope="영역" />
- 지정한 경로와 매개변수를 이용해서 컨텍스트 루트를 포함한 URL을 생성
- var 속성을 통해 원하는 위치에 출력할 수 있음
<c:url value="/11JSTL/inc/OtherPage.jsp" var="url"> ⇐ URL생성 <c:param name="user_param1" value="Must" /> ⇐ 파라미터 <c:param name="user_param2">Have</c:param> </c:url> <a href="${url }">OtherPage.jsp 바로가기</a> ⇐ “OtherPage.jsp?user_param1=Must&” 와 같은 링크가생성
[Note] 예제 실행후 소스보기를 해보면 href=”/MustHaveJSP/11JSTL/...” 과 같이 컨텍스트 루트 경로가포함되어 있는것을 볼 수 있다.
👉 Intellij에서 태그라이브러리 taglib uri 불러오기 오류 해결법
- maven repository에서 dependency 내용을 pom.xml에 추가하고, maven 동기화 버튼 클릭