<jsp:include />
액션 태그는 JSP 페이지에서 다른 JSP 파일을 실행 시점에 동적으로 포함하는 방법입니다. 이 태그는 정적인 내용을 포함하는 <%@ include %>
지시자와 달리, 요청할 때마다 포함된 JSP 파일을 로드하므로 변경된 내용을 즉시 반영할 수 있는 장점이 있습니다.
<jsp:include />
액션 태그의 특징<jsp:include />
는 요청이 들어올 때마다 포함된 JSP 파일을 로드하므로, 포함된 파일이 변경되면 JSP를 다시 컴파일할 필요 없이 즉시 반영됩니다.<jsp:param />
태그를 사용하여 포함된 JSP 파일에 파라미터를 전달할 수 있어, 동적인 데이터 처리가 가능합니다.<jsp:include />
액션 태그 문법<jsp:include page="파일경로">
<jsp:param name="파라미터명" value="값" />
</jsp:include>
<jsp:param />
: 파라미터를 포함된 JSP 파일에 전달할 수 있으며, name
과 value
속성을 사용하여 전달할 파라미터 이름과 값을 지정합니다.아래는 index.jsp
파일에서 <jsp:include />
태그를 사용하여 다른 JSP 파일(header.jsp
와 footer.jsp
)을 포함하고, 파라미터를 전달하는 예제입니다.
<!-- index.jsp -->
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>메인 페이지</title>
</head>
<body>
<!-- header.jsp 포함, 파라미터 전달 -->
<jsp:include page="header.jsp">
<jsp:param name="username" value="홍길동" />
<jsp:param name="welcomeMessage" value="환영합니다!" />
</jsp:include>
<h1>메인 콘텐츠</h1>
<p>여기에 메인 콘텐츠가 표시됩니다.</p>
<!-- footer.jsp 포함 -->
<jsp:include page="footer.jsp" />
</body>
</html>
<!-- header.jsp -->
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
String username = request.getParameter("username");
String welcomeMessage = request.getParameter("welcomeMessage");
%>
<header>
<h2>안녕하세요, <%= username %>님</h2>
<p><%= welcomeMessage %></p>
<hr/>
</header>
<!-- footer.jsp -->
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<footer>
<hr/>
<p>Footer 내용: 여기에 공통 푸터가 표시됩니다.</p>
</footer>
<%@ include %>
디렉티브의 특징<%@ include file="파일경로" %>
<!-- index.jsp -->
<%@ include file="header.jsp" %>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>메인 페이지</title>
</head>
<body>
<h1>메인 콘텐츠</h1>
<p>여기에 메인 콘텐츠가 표시됩니다.</p>
</body>
</html>
<%@ include file="footer.jsp" %>
<!-- header.jsp -->
<header>
<h2>사이트 헤더</h2>
<nav>
<a href="index.jsp">홈</a> |
<a href="about.jsp">소개</a> |
<a href="contact.jsp">연락처</a>
</nav>
<hr/>
</header>
<!-- footer.jsp -->
<footer>
<hr/>
<p>사이트 푸터: 여기에 공통 푸터가 표시됩니다.</p>
</footer>
특성 | <%@ include %> 디렉티브 | <jsp:include /> 액션 태그 |
---|---|---|
포함 시점 | 컴파일 시점 | 실행 시점 |
파일 변경 시 반영 여부 | JSP 파일 재컴파일 필요 | 변경 사항 즉시 반영 |
주요 용도 | 공통 레이아웃(정적 콘텐츠) 포함 | 동적 콘텐츠나 파라미터 전달 필요 시 |
파라미터 전달 가능 여부 | 불가능 | 가능 |