Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP에서 jsp:useBean 액션 태그로 JavaBeans 다루는 방법

JSP의 useBean 액션은 매우 유용한 기능입니다. 이 액션은 먼저 지정된 idscope 속성을 기준으로 기존에 존재하는 객체를 검색하고, 해당 객체가 존재하지 않으면 새로 생성하려고 시도합니다.

기본 사용법

빈(Bean)을 로드하는 가장 간단한 방법은 다음과 같습니다.

<jsp:useBean id = "name" class = "package.class" />

빈 클래스가 한 번 로드되면 jsp:setPropertyjsp:getProperty 액션을 사용하여 빈의 속성값을 수정하거나 조회할 수 있습니다.

useBean 액션의 주요 속성

다음 표는 useBean 액션과 함께 사용되는 주요 속성들을 정리한 것입니다.

번호속성 및 설명
1class
빈의 전체 패키지 이름을 지정합니다.
2type
객체를 참조할 변수의 타입을 지정합니다.
3beanName
java.beans.Beans 클래스의 instantiate() 메서드에서 사용할 빈의 이름을 지정합니다.

실습 예제

예제에서 사용할 테스트 빈(TestBean)을 먼저 정의해 보겠습니다.

/* 파일명: TestBean.java */
package action;

public class TestBean {
   private String message = "No message specified";

   public String getMessage() {
      return(message);
   }
   public void setMessage(String message) {
      this.message = message;
   }
}

위 코드를 컴파일하여 생성된 TestBean.class 파일을 C:\apache-tomcat-7.0.2\webapps\WEB-INF\classes\action 폴더에 복사하고, CLASSPATH 환경 변수도 해당 폴더를 가리키도록 설정해야 합니다.

이제 main.jsp 파일에 아래 코드를 작성합니다. 이 코드는 빈을 로드한 후 문자열 파라미터를 설정(set)하고 가져오는(get) 과정을 보여줍니다.

<html>
   <head>
      <title>JSP에서 JavaBeans 사용하기</title>
   </head>
   <body>
      <center>
         <h2>JSP에서 JavaBeans 사용하기</h2>
         <jsp:useBean id = "test" class = "action.TestBean" />
         <jsp:setProperty name = "test" property = "message" value = "Hello JSP..." />
         <p>메시지를 가져왔습니다....</p>
         <jsp:getProperty name = "test" property = "message" />
      </center>
   </body>
</html>

이제 브라우저에서 main.jsp에 접속하면 다음과 같은 결과가 출력됩니다.

실행 결과

메시지를 가져왔습니다....
Hello JSP...

이처럼 jsp:useBean 액션을 활용하면 JSP 페이지에서 자바 객체를 손쉽게 재사용할 수 있으며, setProperty와 getProperty 액션과 함께 사용하면 뷰와 비즈니스 로직을 깔끔하게 분리하는 구조를 만들 수 있습니다.