Backend/Web

[JSP] include 액션 태그와 디렉티브 | forward, JavaBean 액션태그

해로몬 2024. 11. 11. 17:24

include 액션태그

<jsp:include /> 액션 태그는 JSP 페이지에서 다른 JSP 파일을 실행 시점에 동적으로 포함하는 방법입니다.

<jsp:include /> 액션 태그의 특징

  1. 실행 시점에 포함: <jsp:include />는 요청이 들어올 때마다 포함된 JSP 파일을 로드하므로, 포함된 파일이 변경되면 JSP를 다시 컴파일할 필요 없이 즉시 반영됩니다.
  2. 동적 콘텐츠 포함에 적합: 주로 사용자 정보, 최신 게시물, 실시간 데이터 등을 표시하는 동적 콘텐츠 포함에 유용합니다.
  3. 파라미터 전달 가능: <jsp:param /> 태그를 사용하여 포함된 JSP 파일에 파라미터를 전달할 수 있어, 동적인 데이터 처리가 가능합니다.
<jsp:include page="파일경로"> //파일경로 지정
    <jsp:param name="파라미터명" value="값" /> //name,value 속성을 사용하여 파라미터 이름과 값을 지정 후 전달.
</jsp:include>

 


<%@ include %> 디렉티브의 특징

  • 정적 포함: 컴파일 시점에 포함 파일의 내용을 현재 JSP 파일에 삽입합니다. 이를 정적 포함이라고 합니다.
  • 반복적인 코드 포함: 헤더, 푸터, 메뉴와 같은 반복되는 요소를 여러 JSP 파일에 동일하게 포함할 때 유용합니다.
  • 파일 변경 시 재컴파일 필요: 포함된 파일이 변경되면, JSP 파일을 다시 컴파일해야 변경 사항이 반영됩니다.

 

문법

<%@ include file="파일경로" %> //파일의 경로 지정 => 상대경로로 지정함.
  • file : 포함할 파일의 경로를 지정합니다. 이 경로는 현재 JSP 파일을 기준으로 상대 경로로 지정할 수 있습니다

forward 액션태그

<jsp:forward />

클라이언트에게 응답을 보내지 않고 다른 JSP 페이지로 요청을 전달합니다. 예를 들어, 로그인 성공 후 다른 페이지로 이동하는 경우 사용할 수 있습니다. page 속성으로 전달할 JSP 파일을 지정하며, <jsp:param />을 통해 파라미터를 전달할 수 있습니다.

<jsp:forward /> 액션 태그의 기본 문법

<jsp:forward page="대상경로">
    <jsp:param name="파라미터명" value="값" />
</jsp:forward>
  • page: 요청을 전달할 대상 JSP 페이지나 서블릿의 경로입니다. 현재 JSP 파일을 기준으로 상대 경로나 절대 경로를 지정할 수 있습니다.
  • <jsp:param />: 전달할 파라미터를 정의할 때 사용하며, name과 value 속성으로 파라미터 이름과 값을 설정합니다.

  • 사용 예시:
<jsp:forward page="welcome.jsp">
    <jsp:param name="userId" value="1234" />
</jsp:forward>

 

  • 특징:
    • 서버 측 이동 : 클라이언트는 이동을 인식하지 못하고, URL이 변경되지 않습니다.
    • 파라미터 전달 가능: <jsp:param />을 사용해 파라미터를 전달 할 수 있습니다.

JavaBean 액션태그

재사용 가능한 자바 클래스, JSP 페이지에서 쉽게 사용할 수 있도록 규칙을 따른 자바 객체입니다.

 

특징과 규칙

  • 기본생성자 존재
  • 속성 접근을 위한 getter/setter 메서드가 존재
  • 속성은 직접 접근할 수 없으며, 반드시 getter/setter를 통해 접근해야 함.

JavaBean을 사용하면 데이터 처리와 비즈니스 로직을 Java 클래스로 분리하여 관리할 수 있어, 코드의 재사용성과 유지보수성이 향상됩니다.

 

[JSP에서 JavaBean을 사용하는 주요 액션 태그]

JSP에서 JavaBean을 사용하는 데는 주로 <jsp:useBean />, <jsp:setProperty />, <jsp:getProperty /> 액션 태그를 사용합니다.


1. <jsp:useBean /> 액션 태그

JavaBean 객체를 선언하고 초기화하는 태그입니다. JSP 페이지 내에서 JavaBean 객체를 사용하려면 먼저 <jsp:useBean /> 태그를 통해 객체를 생성해야 합니다.

  • 문법:
<jsp:useBean id="beanID" class="패키지명.Bean클래스명" scope="범위" />
  • 속성:
    • id
    • class
    • scope : JavaBean의 범위를 지정하며, page,request,session,application이 있다.
  • 예시:
<jsp:useBean id="user" class="com.example.User" scope="session" />

2. <jsp:setProperty /> 액션 태그

JavaBean 객체의 속성 값을 설정하는 태그입니다. <jsp:useBean />으로 생성한 JavaBean의 특정 속성에 값을 할당할 때 사용합니다.

  • 문법:
<jsp:setProperty name="beanID" property="속성명" value="값" />
  • 속성:
    • name
    • property : "*"를 사용하면 요청 파라미터의 값을 자동으로 JavaBean의 속성에 설정할 수 있음.
    • value
  • 예시:
<jsp:setProperty name="user" property="username" value="홍길동" />

또는, 요청 파라미터 값을 자동으로 설정할 경우:

<jsp:setProperty name="user" property="*" />

3. <jsp:getProperty /> 액션 태그

JavaBean 객체의 속성 값을 읽어와 출력하는 태그입니다. <jsp:useBean />으로 생성한 JavaBean의 특정 속성 값을 JSP 페이지에 표시할 때 사용합니다.

  • 문법:
<jsp:getProperty name="beanID" property="속성명" />
  • 속성:
    • name
    • property
  • 예시:
<p>사용자 이름: <jsp:getProperty name="user" property="username" /></p>

'Backend > Web' 카테고리의 다른 글

WEB.xml /@WebServlet  (0) 2024.11.12
Servlet⭐️  (0) 2024.11.12
[JSP]DTO & DAO⭐️  (0) 2024.11.11
인텔리제이 Apache Tomcat 설정하기  (0) 2024.11.08
[JSP] JDBC 연동  (3) 2024.11.08