
JSP의 표준 액션 태그는 JSP 페이지에서 특정 작업을 수행하는데 사용됩니다. 예를 들어, 다른 JSP 페이지를 포함하거나(forward), 자바빈을 사용하여 데이터를 저장하거나 가져오는 등의 작업이 가능합니다. 이러한 태그는 스크립틀릿 태그( <% ... %>)의 사용을 줄이고 더 구조화된 코드를 작성하는 데 도움을 줍니다.

<jsp:include> 액션 태그flush 속성을 true로 설정하면, 현재 JSP 페이지의 버퍼가 플러시된 후에 포함된 페이지가 실행됨<jsp:param> 액션 태그<jsp:include>나 <jsp:forward> 태그와 함께 사용되어, 요청 시 전달할 파라미터를 지정합니다.main3.jsp<%@ page contentType="text/html; charset=UTF-8"%>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>include 액션 실습</title>
</head>
<body>
<h1>include 태그 실습</h1>
현재 시간을 구하는 예제입니다. 다음줄에 삽입이 됩니다.<br>
<jsp:include page="header2.jsp" flush="true">
<jsp:param name="nickName" value="Mr Hong" />
</jsp:include>
</body>
</html>
<%@ page contentType="text/html; charset=UTF-8"%>: 페이지의 콘텐츠 타입과 인코딩을 설정.<jsp:include>: header2.jsp 파일을 포함.<jsp:param>: 포함된 페이지에 nickName이라는 파라미터를 전달.header2.jsp<%@page import="java.util.Calendar"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%
String nickName = request.getParameter("nickName");
Calendar cal = Calendar.getInstance();
int hour = cal.get(Calendar.HOUR_OF_DAY);
int minute = cal.get(Calendar.MINUTE);
int second = cal.get(Calendar.SECOND);
%>
안녕하세요 당신의 닉네임은 <%= nickName %>입니다.<br>
현재 시간은 <%= hour %> 시 <%= minute %> 분 <%= second %> 초 입니다.
<%@page import="java.util.Calendar"%>: Calendar 클래스를 가져옴.request.getParameter("nickName"): main3.jsp에서 전달된 파라미터 값을 가져옴.Calendar 클래스를 사용하여 구함.main3.jsp 페이지에 접근합니다.header2.jsp 파일을 포함하도록 <jsp:include> 태그가 처리됩니다.flush="true"로 설정되어 있어, main3.jsp의 버퍼가 플러시된 후 header2.jsp가 실행됩니다.main3.jsp에서 전달된 nickName 파라미터를 request.getParameter("nickName")로 받아옵니다.Calendar 클래스를 사용하여 현재 시간을 구합니다.nickName을 포함한 HTML 콘텐츠를 생성합니다.header2.jsp의 결과가 main3.jsp에 삽입되고, 최종 HTML이 브라우저에 반환됩니다.이러한 방식으로 <jsp:include> 태그와 <jsp:param> 태그를 사용하여 JSP 페이지 간에 데이터를 전달하고 포함할 수 있습니다. 각 태그와 코드 블록은 JSP 페이지의 모듈화와 재사용성을 높이는 데 중요한 역할을 합니다.
