본문 바로가기
프로그래밍/Front-end

자바스크립트 EL태그와 JSTL태그의 정의와 사용법에 대하여!

by @GodWin 2024. 9. 27.

-

 

-
안녕하세요? 오늘은, 자바스크립트의 EL태그와 JSTL태그의 정의와 사용법에 대해서 알아보도록 하겠습니다.


EL (Expression Language)과 JSTL (JavaServer Pages Standard Tag Library)은 JSP (JavaServer Pages)에서 데이터를 쉽게 처리하고 표현하는 데 사용되는 기술입니다.

EL (Expression Language) : EL은 JSP 페이지에서 Java 객체의 속성에 접근하고 표현할 수 있도록 돕는 언어입니다. 
문법은 기본적으로 ${} 구문을 사용하여 표현합니다.


셋팅 방법에 대해서 알아도보록 하곘습니다.


1. maven 사용시, web.xml 에 하단 라이브러리 내용 선언 or 디펜던시 추가

<taglib>
    <taglib-uri>jstl-c</taglib-uri>
    <taglib-location>/WEB-INF/tlds/jstl/c.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>jstl-fmt</taglib-uri>
    <taglib-location>/WEB-INF/tlds/jstl/fmt.tld</taglib-location>
</taglib>

<taglib>
    <taglib-uri>jstl-fn</taglib-uri>
    <taglib-location>/WEB-INF/tlds/jstl/fn.tld</taglib-location>
</taglib>






2. JSP 상단 태그 라이브러리 선언

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>




* EL (Expression Language)

- page, request, session, application의 attribute, parameter 속성을 사용
- 관련 기본 객체 : pageScope, requestScope, sessionScope, applicationScope,pageContext, param, paramValues, cookie, header, headerValues, initParam
- 관련 접근자 : getErrorData(), getPage(),getRequest(), getResponse(), getServletConfig(), getServletContext(), getSession(), getAttribute(), getAttributeNamesInScope(), getAttributesScope(), getExpression!Eval!uator(), getOut(), getVariableResolver()
- 사용법 : ${기본객체.속성}

   ex) ${pageScope.arr[0]}, ${param.valueName}, ${pageContext.request.method}

- 활성/비활성화 : <% page isELignored="true" %> -> true : 비활성, false : 활성



* JSTL (Jsp Standard Tag Library)


- jstl.jar와 standard.jar 파일을 톰캣(Tomcat) 폴더의 lib 폴더에 복사 후 사용
- 속성 : set, remove, if, choose, forEach, forTokens, Import, redirect, url, catch, out
- 사용법 : <c:속성 속성에따른조건> </속성>

  ex)

<c:set var="변수명" value="값" />
<c:if test="조건">
    <c:forEach begin="시작값" end="끝값" step="증가값" var="변수명" varStatus="접근값">
        <c:choose>
            <c:when test="조건"> contents </c:when>
            <c:otherwise> contents </c:otherwise>
        </c:choose>
    </c:forEach>
</c:if>

<c:forTokens var="변수명" items="문자열" delims="구분자"> contests </c:forTokens>


※ forEach 문에서 step은 기본 1증가, 접근값의 index와 count 추출 가능합니다.

* forEach문의 row 정보를 확인하기 위하여 사용하는 varStatus 의 속성

속성 : current, index, count, first, last, begin, end, step 등이 있습니다.
사용법 : ${접근값.get속성명()}, ${접근값.속성명}


이렇게 자바스크립트의 EL태그와 JSTL태그의 정의와 사용법에 대해서 알아보았습니다.
오늘도 즐거운 하루 되시길 바라겠습니다.