본문 바로가기

🌈 백엔드/서블릿 JSP

JSTL

반응형
SMALL

 

 

[1] JSTL


(1) JSTL 정의 

JSP 표준 태그 라이브러리를 의미한다 

자신만의 태그를 추가할수 있는 기능을 제공한다 

<% %> 구성은 오류가 날 가능성이 높아 이런 코드를 안쓰기 위해 JSTL 이 생겼다

 

 

(2) JSTL 사용방법 

 

 

① for문

1~10(to) 까지

<c:forEach var="i" begin="1" end="${to}">
	${i}
</c:forEach>

//1 2 3 4 5 6 7 8 9 10

 

② if문 , for문

status는 count 와 index를 자동으로 기록할수 있다

status.count : 반복문 횟수를 1부터

status.index : 반복문 인덱스를 0부터 

<c:if test="${not empty arr}">
	<c:forEach var="elem" items="${arr}" varStatus="status">
		${status.count}. arr[${status.index}]=${elem}<BR>
	</c:forEach>
</c:if>	


/*
1. arr[0]=10
2. arr[1]=20
3. arr[2]=30
4. arr[3]=40
5. arr[4]=50
6. arr[5]=60
7. arr[6]=70
*/

 

③ out 

태그로 해석하지 않아 script 공격에 방어할수 있다 

 

<c:if test="${param.msg != null}">
	msg=${param.msg} 
	msg=<c:out value="${param.msg}"/>
</c:if>

<c:if test="${param.msg == null}">메시지가 없습니다.<br></c:if>

//메시지가 없습니다.

 

 

④if-else if문

c:set var="age" value="${param.age}"/>
<c:choose>
	<c:when test="${age >= 19}">성인입니다.</c:when>
	<c:when test="${0 <= age && age < 19}">성인이 아닙니다.</c:when>
	<c:otherwise>값이 유효하지 않습니다.</c:otherwise>
</c:choose>

//값이 유효하지 않습니다.

 

<c:set var="now" value="<%=new java.util.Date() %>"/>
Server time is <fmt:formatDate value="${now}" type="both" pattern="yyyy/MM/dd HH:mm:ss"/>

//Server time is 2023/08/18 14:46:11

 

반응형
LIST

'🌈 백엔드 > 서블릿 JSP' 카테고리의 다른 글

스프링_Root AC + Servlet AC  (0) 2023.09.06
Filter 필터  (0) 2023.08.13
EL 표현식  (0) 2023.08.13
URL 맵핑  (0) 2023.08.13
저장소 scope  (0) 2023.08.13