JSP 액션태그 (Action Tag) 종류 및 설명

액션태그란?

JSP(Java Server Pages) 액션태그는 JSP 페이지에서 서버 측 처리를 수행하는 데 사용되는 태그입니다. 이 태그들은 JSP 페이지 내에서 특정 작업을 수행하고, JSP 페이지를 더 동적이고 상호 작용적으로 만드는 데 도움을 줍니다.

액션태그 종류 및 설명

<jsp:forward>

  • 목적: 다른 페이지로 요청을 전달합니다.
  • 사용법: <jsp:forward page=”relativeURL”/>
  • 특징: 현재 JSP 페이지의 처리를 중단하고, 제어를 다른 페이지로 전달합니다. 전달된 페이지에서는 동일한 요청과 응답 객체를 사용합니다.
Java
<jsp:forward page="nextPage.jsp"/>
Java

현재 페이지에서 처리를 중단하고 nextPage.jsp로 제어를 전달합니다.

<jsp:include>

  • 목적: 다른 페이지의 내용을 현재 페이지에 포함시킵니다.
  • 사용법: <jsp:include page=”relativeURL” flush=”true”/>
  • 특징: 현재 페이지의 실행 중 다른 페이지를 포함시키며, 포함된 페이지는 독립적으로 실행됩니다. flush=”true”는 현재 출력 버퍼를 비우고 포함된 페이지로 제어를 넘깁니다.
Java
<jsp:include page="header.jsp" flush="true"/>
Java

현재 페이지에 header.jsp의 내용을 포함시킵니다.

<jsp:useBean>

  • 목적: JavaBean 컴포넌트를 사용하거나 참조합니다.
  • 사용법: <jsp:useBean id=”beanId” class=”className” scope=”scope”/>
  • 특징: 지정된 ID로 JavaBean을 찾거나 생성합니다. class 속성은 Bean의 클래스를, scope는 Bean의 범위를 지정합니다(예: page, request, session, application).
Java
<jsp:useBean id="user" class="com.example.User" scope="session"/>
Java

com.example.User 클래스의 인스턴스를 user라는 이름으로 세션 범위에 저장하거나 찾습니다.

<jsp:setProperty>

  • 목적: JavaBean의 속성을 설정합니다.
  • 사용법: <jsp:setProperty name=”beanName” property=”propertyName” value=”value”/>
  • 특징: 지정된 Bean의 속성에 값을 설정합니다. property=”*”는 요청 매개변수와 일치하는 모든 속성을 자동으로 설정합니다.
Java
<jsp:setProperty name="user" property="name" value="John Doe"/>
Java

user라는 이름의 JavaBean의 name 속성을 “John Doe”로 설정합니다.

<jsp:getProperty>

  • 목적: JavaBean의 속성 값을 가져와 출력합니다.
  • 사용법: <jsp:getProperty name=”beanName” property=”propertyName”/>
  • 특징: 지정된 Bean의 특정 속성 값을 가져와서 페이지에 표시합니다.
Java
<jsp:getProperty name="user" property="name"/>
Java

user라는 이름의 JavaBean에서 name 속성의 값을 가져와 출력합니다.

<jsp:param>

  • 목적: <jsp:forward>, <jsp:include>, <jsp:plugin> 태그에 매개변수를 추가합니다.
  • 사용법: <jsp:param name=”parameterName” value=”value”/>
  • 특징: 다른 액션태그와 함께 사용되며, 요청 매개변수를 추가합니다.
Java
<jsp:include page="footer.jsp">
  <jsp:param name="param1" value="value1"/>
</jsp:include>
Java

footer.jsp 페이지를 포함시키면서 param1이라는 요청 매개변수를 전달합니다.

<jsp:plugin>

  • 목적: 브라우저에서 애플릿 또는 객체를 실행하기 위한 태그입니다.
  • 사용법: <jsp:plugin type=”type” code=”code” codebase=”codebase”/>
  • 특징: type은 applet 또는 bean, code는 클래스 파일, codebase는 코드 베이스 디렉토리를 지정합니다.
Java
<jsp:plugin type="applet" code="com.example.AppletClass" codebase="applets"/>
Java

applets 디렉토리에 있는 com.example.AppletClass 애플릿을 실행합니다.

<jsp:element>, <jsp:attribute>, <jsp:body>

  • 목적: XML 요소와 속성을 동적으로 정의합니다.
  • 사용법: <jsp:element name=”elementName”>, <jsp:attribute name=”attributeName”>, <jsp:body>
  • 특징: 이 태그들은 XML 문서 내에서 동적인 요소 및 속성을 생성할 때 사용됩니다.
Java
<jsp:element name="customElement">
  <jsp:attribute name="attr">Value</jsp:attribute>
  <jsp:body>Element Body</jsp:body>
</jsp:element>
Java

customElement라는 이름의 XML 요소를 생성하며, attr라는 속성을 가지고 “Element Body”라는 내용을 포함합니다.

결론

JSP 액션태그는 서버 측에서의 동적 처리를 위해 사용되는 JSP의 핵심 요소입니다. 이들 태그는 <jsp:forward>, <jsp:include>처럼 페이지 간의 제어를 전달하거나 내용을 포함시키는 기능부터, <jsp:useBean>, <jsp:setProperty>, <jsp:getProperty>와 같이 JavaBean과 상호작용하는 기능, 그리고 <jsp:param>을 통한 매개변수 전달, <jsp:plugin>을 이용한 애플릿 실행에 이르기까지 다양한 작업을 수행합니다. 이 태그들은 JSP 페이지의 동적인 기능을 향상시키고, 웹 개발 과정에서 코드 재사용성과 유지보수의 용이성을 제공합니다,

Leave a Comment