JSP/Servlet | JSTL(JSP Standard Tag Library) | <c:url>, <c:redirect>
URL 출력 <c:url>
<c:url>
태그는 url을 만들어 내는데, url를 인코딩 해주기도 하고 context를 자동으로 추가해서 주소를 자동으로 생성해 주지도 한다.
context 속성이 지정되었을 경우 value와 context 의 값은 /로 시작을 해야 된다. context 속성이 생략되면 현재의 컨텍스트가 적용된다.
문법
<c:url value="value" [context="context"] [var="varName"] [scope="{page|request|session|application}"]/>
속성
항목 | 설명 | 필수 여부 | 기본값 |
---|---|---|---|
url | 기본 URL | 필수 | |
context | / 다음에 오는 로컬 어플리케이션의 이름 | 현재 어플리케이션 | |
var | 처리된 URL을 표시할 변수명 | 표시되는 페이지 | |
scope | 변수의 처리된 URL을 노출하는 범위 | page |
예제
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Tag Example</title>
</head>
<body>
<a href="<c:url value='/hello.jsp?name=데브쿠마'/>">cookie.jsp</a><br><br>
<a href="<c:url value='/' />">Context Root(/)</a>
</body>
</html>
아래 링크 태그를 클릭하면, http://localhost:8080/hello.jsp
로 이동한다.
<a href="<c:url value='/hello.jsp?name=데브 쿠마'/>">cookie.jsp</a><br><br>
<c:url>
이 만들어 내는 url은 http://localhost:8080/web/jsp/hello.jsp
이고, 변수 name의 “데브 쿠마” 값에 공백이 있는 이는 %20
으로 url이 인코딩되어 넘어간다.
아래 링크 태그를 클릭하면 http://localhost:8080/web/
로 이동한다.
<a href="<c:url value='/'/>">Context Root(/)</a>
리다이렉트 <c:redirect>
속성
항목 | 설명 | 필수 여부 | 기본값 |
---|---|---|---|
url | 사용자 브라우저에서 리다이렉트하는 URL | 필수 | |
context | / 다음에 오는 로컬 웹 응용 프로그램의 이름 |
예제
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title><c:redirect> Tag Example</title>
</head>
<body>
<c:redirect url="http://www.devkuma.com"/>
</body>
</html>
http://www.devkuma.com으로 이동한다.
최종 수정 : 2024-01-18