JSP 액션 태그: include와 forward 사용법

JSP 액션 태그: include와 forward 사용법

이 글에서는 JSP(JavaServer Pages)에서 자주 사용되는 include와 forward 액션 태그의 사용법에 대해 알아봅니다. 이 두 태그는 JSP 페이지 내에서 다른 리소스를 포함하거나 요청을 다른 리소스로 전달할 때 유용합니다.

1. include 액션 태그

include 액션 태그는 다른 JSP 페이지나 HTML 파일을 현재 JSP 페이지에 포함시킬 때 사용됩니다. 이 태그는 정적 및 동적 포함을 모두 지원합니다.

1.1 정적 포함

정적 포함은 JSP 페이지가 컴파일될 때 포함 파일의 내용을 그대로 삽입하는 방식입니다. 이 방식은 페이지 로딩 속도가 빠르지만, 포함된 파일이 변경되어도 다시 컴파일되지 않는 단점이 있습니다.

<%@ include file="header.jsp" %>

1.2 동적 포함

동적 포함은 JSP 페이지가 요청될 때마다 포함 파일을 동적으로 포함하는 방식입니다. 이 방식은 포함된 파일이 변경될 때마다 최신 내용을 반영할 수 있습니다.

<jsp:include page="header.jsp" flush="true" />

1.3 include 사용 예제

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>Include 예제</title>
</head>
<body>
    <%@ include file="header.jsp" %>
    <h1>메인 콘텐츠</h1>
    <jsp:include page="footer.jsp" flush="true" />
</body>
</html>
include 액션 태그 사용 예제 결과 화면

2. forward 액션 태그

forward 액션 태그는 현재 요청을 다른 리소스로 전달할 때 사용됩니다. 이는 서버 측에서 요청을 다른 JSP 페이지, 서블릿 또는 HTML 파일로 전달하여 처리할 수 있게 합니다.

2.1 forward 사용 예제

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>Forward 예제</title>
</head>
<body>
    <p>화면에 표시되지 않습니다.</p>
    <jsp:forward page="target.jsp" />
</body>
</html>
forward 액션 태그 사용 예제 실행 결과

2.2 forward와 include 비교

include와 forward의 주요 차이점은 include는 현재 페이지에 다른 리소스를 포함시키는 반면, forward는 현재 요청을 완전히 다른 리소스로 전달한다는 점입니다. include는 페이지 일부를 재사용할 때 유용하고, forward는 요청 처리를 다른 페이지로 넘길 때 유용합니다.

관련 이전 게시글

위로 스크롤