[JSP]EL&JSTL

UnKnown_7·2022년 10월 5일

JSP&Servlet

목록 보기
8/13

EL

JSP의 출력 문법을 대체하는 표현 언어.

EL을 사용하려면 JSP 파일 최상단에 isELIgnored ="false"를 추가해야 한다.

EL표기법

${}
#{}

내장객체

JSP 출력 vs EL 출력

<!--JSP출력-->
<%=request.getParameter("a")%>
<!--EL출력-->
${param.a}

JSTL

JSTL 라이브러리 추가

라이브러리이기 때문에 다운로드 하여 추가해야한다.
https://tomcat.apache.org/taglibs/standard/
다운받은 후 lib에 있는 jstl.jar, standard.jar을 프로젝트안의 WEB-INF안의 lib에 넣는다.

<!-- core태그 import -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<!-- formatting태그 import -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!-- functions태그 import -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>

JSTL 태그 종류

  • Core: 일반적인 프로그램의 기능 제공
  • Formatting: 날짜,시간,숫자,텍스트를 포멧하고 표시하는 formatter기능 제공
  • SQL: RDBMS와 상호 작용하는 태그 제공
  • XML: XML문서를 생성하고 조작하는 방법을 제공
  • Functions: 일반적인 문자열을 가공하고 조작하는 표준 함수 제공

Core 태그

사용법


<!-- <c:set> -->
<c:set var="변수명" value="변수값" [scope="scope속성"]/>

<!-- <c:remove> -->
<c:remove var="변수명"/>

<!-- <c:if> -->
<c:if test="${조건식}" var"변수명" [scope="scope속성"]/>

<!-- <c:choose> -->
<c:choose>
  	<c:when test="조건식1">본문내용1</c:when>
    <c:when test="조건식2">본문내용2</c:when>
    <c:otherwise>본문내용</c:otherwise>
</c:choose>

<!-- <c:forEach> -->
<c:forEach var="변수명" items="반복할 객체 이름" begin="시작값" end"마지막 값" step="증가값" varStatus="반복상태변수이름">
</c:forEach>

<!-- <c:forTokens> -->
<c:forTokens var="변수명" items="반복할 객체 이름" delims="구분자">
${변수명}
</c:forTokens>

<!-- <c:url> -->
<c:url var="변수명" value="URL경로" [scope="scope 속성"]>
	<c:param name="매개변수명" value="전달값"/>
</c:url>
<!-- <c:url>의 변수명을 넣으면 작동함 -->
<a href = '${변수명}'></a>

<!-- <c:redirect> -->
<c:redirect url="redirect할 URL">
	<c:param name="매개변수명" value="전달값"/>
</c:redirect>

<!-- <c:out> -->
<!-- escapeXml true시에는 이스케이프 문자 적용됨 -->
<c:out value="출력값" default="기본값" [escapeXml="boolean값"]/>

유용한 사용법

<!--길이 줄이기-->
<c:set var="contextPath" value="${pageContext.request.contextPath}"/>

Formatting 태그

Functions 태그

profile
개인 공부 요약용 블로그

0개의 댓글