JavaBean, DTO& DAO_jsp

2022. 2. 5. 11:51ksmart_jsp

728x90
JavaBean

DTO 클래스로서 자바빈의 규격서에 따라 작성된 클래스

DTO는 Data Transfer Object의 약자로 
데이터를 운반하는 객체이다.
데이터만을 가지는 private 필드와 getter, setter만을 가지는 객체

자바빈의 규격서

반드시 빈은 패키지화 하여야 한다.
멤버 변수는 프로퍼티(property)라고 부른다.
클래스는 필요에 따라 직렬화 할 수 있다.
프로퍼티의 접근 지정자는 private이다.
프로퍼티 마다 getter, setter (public)가 존재해야 한다.
읽기 전용인 경우에는 getter만 정의할 수 있다.
자바빈 코드
public class FromBean {
   private String name;
   private int kor, eng;
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public int getKor() {
      return kor;
   }
   public void setKor(int kor) {
      this.kor = kor;
   }
   public int getEng() {
      return eng;
   }
   public void setEng(int eng) {
      this.eng = eng;
   }
}

 

자바빈을 사용하는 이유

html 코드와 java 코드가 겹쳐지기 때문에 가독성이 매우 떨어진다.

또, JSP 페이지에 뷰(View)와 로직(Logic)을 공존시키면 코드의 재사용성도 현저히 떨어진다.

JSP는 본래 View의 역할을 담당하기 때문에 이를 분리하여 빈으로 작성하는 것이

코드의 가독성과 재사용성을 높이는 것이 좋다.

 

JSP 액션태그 useBean
<jsp:useBean id="인스턴스명" class="클래스이름" scope="범위"/>

 

 id - 지정한 이름의 인스턴스가 존재하면 그 객체를 사용하고, 없으면 새로 생성하여 사용한다.

 scope - page, request, session, application 값에 따라서 해당 기본 객체에 저장

<jsp:setProperty name="자바빈" property="프로퍼티이름" value="값" />

 

name - 해당하는 빈에 프로퍼티값을 할당할 때 사용

property - 이름은 key, 값은 value

<jsp:getProperty name="자바빈" property="프로퍼티이름" />

name - 해당하는 빈에서 property 값을 가져올 때 사용

728x90