JSTL(JSP Standard Tag Library)4

oyeon·2021년 1월 12일
0

코어 태그 : 흐름제어 태그 - redirect

  • 지정한 페이지로 리다이렉트한다. response.sendRedirect()와 비슷
// url - 리다이렉트 URL
// <c:param>은 리다이렉트할 페이지에 전달할 파라미터 지정
<c:redirect url="리다이렉트할 URL">
    <c:param name="파라미터 이름" value="파라미터 값" />
</c:redirect>

실습

// jstl06.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:redirect url="http://localhost:8080/firstweb/jstl05.jsp"></c:redirect>

결과

코어 태그 : 기타 태그 - out

  • JspWriter에 데이터를 출력한다.
/*
value - JspWriter에 출력할 값을 나타낸다. 일반적으로 value 속성의 값은 String과 같은 문자열이다.
        만약 value의 값이 java.io.Reader의 한 종류라면 out 태그는 Reader로 부터 데이터를 읽어와 
        JspWriter에 값을 출력한다.
escapeXml - 이 속성의 값이 true일 경우 아래 표와 같이 문자를 변경한다.(태그를 문자로 인식한다.)
	    생략할 수 있으며, 생략할 경우 기본값은 true이다.
default - value 속성에서 지정한 값이 존재하지 않을 때 사용될 값을 지정한다.
*/
<c:out value="value" escapeXml="{true|false}" default="defaultValue" />
  • [표] escapeXml 속성이 true일 경우 변환되는 문자

실습1 - escapeXml 속성 true (기본 값)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="t" value="<script type='text/javascript'>alert(1);</script>"/>

<c:out value="${t }" escapeXml="true"/>
</body>
</html>

결과

실습2 - escapeXml 속성 false

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="t" value="<script type='text/javascript'>alert(1);</script>"/>

<c:out value="${t }" escapeXml="false"/>
</body>
</html>

결과

profile
Enjoy to study

0개의 댓글