본문 바로가기
발전/JSP

[JSTL] Core 라이브러리 사용법/<c:set>, <c:out>

by babepro 2021. 11. 18.

jsp 파일 상단에 아래 코드 추가

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


<c:set> : 변수 설정

-속성 : 

  • value : 값, 직접 입력하거나 EL 표기법으로 변수 받아옴
  • target : property와 함께 사용, 속성을 변경할 객체(빈, 맵)
  • property : 설정할 속성(필드, 키)
  • var : 값을 저장할 변수명
  • scope : 변수가 저장된 저장소 (page, request, session, application), 기본값은 page

-일반 변수 설정

<c:set var="[변수 이름]" value="[값]" />

이렇게 설정한 변수는 EL 표기법으로 편리하게 사용가능

${[변수 이름]}

 

-객체 변수 설정

<c:set target="${[객체명]}" property="[속성명(필드명) 또는 맵에서 키값]" value="[값]" />

 

참고) 동일한 기능을 스크립틀릿으로 구현 가능

<%

pageContext.setAttribute("[변수이름]", [값 또는 값을 담은 변수]);

%>


<c:out> : 출력 

<c:out value="[출력값]"  escapeXml="true/false" default="[출력값]"/>

-속성 : 

  • value : 출력값, EL 사용 가능
  • escapeXml : 미설정시 기본값은 true, 
    -true : 출력값을 문자 그대로 출력
    -false : 문자를 html코드로 해석 (XSS 노출 위험)
  • default : value 값을 못찾았을 때 출력하는 값

${[출력값]} 과 동일하지만 escapeXml 기능 덕분에 보안상 안전해서 

<c:out> 사용을 추천함