JSP

제7장. 자바빈(JavaBean)

십억10 2009. 3. 30. 10:54

▶ 자바빈(JavaBean)

● 자바빈(JavaBean)

- 데이터를 표현하는 것을 목적으로 하는 자바 클래스

- 구성

 

public class BeanClassName implements java.io.Serializable {

      /* 값을 저장하는 필드 */

       priveate String value;

       

       /* BeanClassName의 기본 생성자 */

       public BeanClassName(){}

       /* 필드의 값을 읽어 오는 값 */

       public String getValue() { return value; }

       /* 필드의 값을 변경하는 값 */

       public void setValue(String value) { this.value = value; }

}


● 자바빈 프로퍼티

- 자바빈에 저장되어 있는 값을 나타낸다.

- 메소드 이름을 사용해서 프로퍼티의 이름을 결정

- 프로퍼티의 값을 설정하는 메소드 : 이름 앞에 set을 붙이고 이름의 첫 글자를 대문자로 한다.

- 프로퍼티의 값을 읽어 오는 메소드 : 이름 앞에 get을 붙이고 이름의 첫 글자를 대문자로 한다.

- 프로퍼티의 값이 boolean일 경우 : get 대신에 is를 앞에 붙인다.

- 읽기 전용 프로퍼티 : get 또는 is 메소드만 존재하는 프로퍼티

- 읽기/쓰기 프로퍼티 : get/set/ 또는 is/set 메소드가 존재하는 프로퍼티

- 다형성과 배열도 가능하다.

- "톰켓\webapps\WEB-INF\src"에서 java 파일을 생성한다.

- "톰켓\webapps\WEB-INF\classes"에 컴파일 한다.

 

package asdf  //"톰켓\webapps\WEB-INF\src\asdf"현재 위치 하고 있는 폴더

 

private boolean finished = false;

private int maxAge = 0;

public void setMaxAge(int value) {  //값을 설정하는 메소드

       this.maxAge = maxAge;

}

public void setMaxAge(int value, int index) {  //setMaxAge()의 다형성

       this.maxAge = maxAge;

}

public int getMaxAge() {  //값을 읽어 오는 메소드

       return maxAge;

}

public void setFinished(boolean finished) { //값을 설정하는 메소드

       this.finished = finished;

}

public boolean isFinished() { //값을 읽어 오는 메소드의 값이 boolean 일 경우

       return finished;

}

public double getFahrenheit() {  // 읽기 전용 프로퍼티

       return 30;

}


● <jsp:useBean> 액션 태그

- JSP페이지에서 사용할 자바빈 객체를 지정해 주는 기능

- 문법

<jsp:useBean id="[빈이름]" class="[자바빈 클래스 이름]" scope="[범위]" />

- id : JSP 페이지에서 자바빈 객체에 접근할 때 사용할 이름을 명시

- class : 패키지 이름을 포함한 자바빈 크래스의 완전한 이름을 입력

- scope : 자바빈 객체가 저장될 영역을 지정한다. page(pageContext), request(request), session(session), application(application) 중 하나를 값으로 갖는다. 기본값은 page이다.

- 사용 예

 

<jsp:useBean id="member" class="asdf.asfd.asdf" scope="request" />

<% member.setld("asdf"); %>

<%=member.getId()%>


● <jsp:getProperty> 와 <jsp:setProperty> 액션 태그

※ <jsp:getProperty>

  - 생성한 자바빈 객체의 프로퍼티 값을 지정

  - 문법

 

<jsp:setProperty name="[자바빈]" property="이름" value="[값]" />

  ․ name : 프로퍼티의 값을 지정할 자바빈 객체의 이름. <jsp:useBean> 액션 태그의 id 속성에서 지정한 값을 사용

  ․ property : 값을 지정할 프로퍼티(클래스에서 선언한 메소드)의 이름

  ․ value : 프로퍼티의 값, 표현식을 사용할 수 있다.

  - 사용 예

 

<jsp:useBean id="member" class="asdf.asdf.asdf" />

<jsp:setProperty name="member" property="name" value="구지성" />

  - value 속성 대신에 param 속성을 사용할 수 있다. 그러나 value와 param은 함께 사용할 수 없다.

 

<jsp:setProperty name="member" property="id" param="memberId" />

  ․ param : 파라미터의 값을 프로퍼티의 값으로 지정할 때 사용

  - property 속성의 값을 "*"로 설정하면 각각의 프로퍼티 값을 같은 이름을 갖는 파라미터의 값으로 설정한다.

※ <jsp:getProperty>

  - 자바빈 객체의 프로퍼티 값을 출력할 때 사용

  - 문법

 

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

  ․ name : <jsp:useBean>의 id 속성에서 지정한 자바빈 객체의 이름

  ․ property : 출력할 프로퍼티의 이름

  - 사용 예

 

<jsp:getProperty name="member" property = "name" />

'JSP' 카테고리의 다른 글

[펌] 톰갯 5.5에서 커넥션풀을 이용하는 방법  (0) 2009.04.06
[펌] 이클립스 jsp 사용법  (0) 2009.04.01
제6장. MVC(Mode-View-Controller) 개념  (0) 2009.03.27
제5장. 쿠키  (0) 2009.03.24
제4장. 필수 이해 요소  (0) 2009.03.23