개발/JSP

[JSP] JSTL

suniverse 2023. 2. 4. 00:22

- JSP에서 사용 가능한 커스텀 태그 라이브러리

--> JSTL Core : JSTL의 기본 핵심 기능(조건문, 반복문, 변수 설정 및 출력 등)을 제공 

 

- JSTL 기능을 사용하려면 해당 라이브러리 다운로드 후 Build path 추가 필요 

  또한, 등록된 JSTL 라이브러리를 실제 사용하려면 반드시 <%@ %> 디렉티브를 사용하여 

  taglib 디렉티브를 등록하고 prefix 값과 uri 정보를 설정해줘야 함 

  --> prefix: 태그에서 사용할 문구(접두어)를 지정하며, 주로 core의 약자 c를 사용 

                    (JSTL 태그 사용 시 <c:xxx> 형식으로 지정 가능) 

  --> uri : 태그 라이브러리가 존재하는 위치

 

✍ <c:set> 태그를 사용하여 변수 설정(선언 및 초기화) 

 

- var 속성에 변수명, value 속성에 변수값 지정 

- scope 속성을 사용하여 변수의 유효범위 지정 가능하며, 생략 시 page 속성이 지정됨 

  (현재 페이지에서만 유효한 변수로 선언됨) 

 

- 선언(생성)된 변수는 EL을 사용하여 접근 가능함 

<c:set var="str" value="Hello, World!" />

 

- <c:set> 태그를 통해 생성된 str변수는 EL을 통해 접근 가능하다 

<h3>\${str } = ${str }</h3>

 

- 주의 ! <c:set> 태그를 통해 생성된 변수는 기본 자바 문법으로 접근 불가 

ex) <%=str %>  --> 오류 발생 

 

- 주의! 자바 문법으로 선언된 변수를 EL에서 사용하려면 JSTL에서 변수로 변환해야한다 

ex) \${num } = ${num }

 

- <c:set> 태그를 사용하여 변수 선언 및 값을 지정 시 표현식으로 자바 변수 지정 

<c:set var="num2" value="<%=num2 %>"/>
<h3>\${num2 } = ${num2 }</h3>	<%-- num2 값 출력됨 --%>

- <c:out> 태그를 사용해도 값 출력 가능(잘 사용하지 않음)

 

- <c:remove> 태그를 사용하여 변수값 삭제(c:set 태그에서 사용된 var 속성의 변수명만 지정)