Back-End/JSP

[JSP] EL문과 JSTL

챌링킴 2021. 7. 26. 21:51
반응형

1) EL문과 JSTL를 쓰는 이유

 

- 페이지의 가독성을 높이기 위해 사용한다.

- Mybatis와 유사하게 라이브러리로 자바 구문을 만들어 놓고 필요할 때마다 꺼내쓰면 되기 때문에 유지보수에 편리하다.

- JSP 페이지 내에서 자바코드와 HTML코드(태그)가 섞여 있으면 가독성이 떨어진다.

- EL문과 JSTL문을 이용하면 HTML과 태그로만 구성된 일관적인 소스코드로 볼 수 있다는 장점이 있다.

 

 

2) EL(Expression Language)

 

- 값을 간편하고 간결하게 출력할 수 있도록 해주는 표현 언어이다.

- 자바 <%=name%> / EL ${ }

- 값을 찾을 때 작은 Scope에서 큰 Scope 순으로 찾는다. ** Scope란? 변수를 사용할 수 있는 범위

- pageContext > request > session > application

- EL ${ } 의 중괄호 사이에 들어가는 것은 변수명이 아니라 해당 객체에 attribute로 세팅해줄 때의 key값을 써준다.

 

 

3) EL문 연산자

/ : div
% : mod
&& : and
|| : or
! : not
> : gt - ${10>3}  / ${10 gt 3} 둘다 true
< : lt
>= : ge
<= : le
== : eq
!= : ne
empty : 값이 비어있다면 true, 아니면 false - ${empty data}

 

 

4) EL문 사용법

 

- ${requestScope.키값}

- ${paraml.네임값}

- ${paramValues.네임값[인덱스]}

- ${cookie.키값.value}

 

 

5) JSTL(JSP Standard Tab Library)란?

- 연산이나 조건문, 반복문을 편하게 처리할 수 있으며 JSP페이지 내에서 자바코드를 사용하지 않고도 로직을 구현할 수 있도록 해준다.

- 자바에서는 for(int i=0; ...){ } 이렇게 쓰지만 JSTL에서는 <c:forEach></c:forEach>

 

 

6) JSTL 다운로드

 

1. 접속하기

https://archive.apache.org/dist/jakarta/taglibs/standard/binaries/

 

Index of /dist/jakarta/taglibs/standard/binaries

 

archive.apache.org

 

2. jakarta-taglibs-standard-1.1.2.zip 다운 후 압축해제하기

 

3. 다운받은 JSTL lib 폴더 내에 있는 jar 파일을 web > lib 에 추가하기

 

4. 사용할 JSP 페이지 상단에 코드 추가하기

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

 

 

7) JSTL core 태그

<c:set></c:set>
//변수 만들 때 사용

<c:out></c:out>
//값을 출력할 때 사용

<c:if></c:if>
//조건 제어(if문)

<c:choose></c:choose>
//조건 제어(switch문)
//내부에는 c:when과 c:otherwise만 있어야한다.

<c:when></c:when>
//조건 제어(case문)

<c:otherwise></c:otherwise>
//조건 제어(default)

<c:forEach></c:forEach>
//반복 제어(for)

 

반응형