본문 바로가기
IT/JSP

[JSP]자바빈 JAVABEAN

by dya0 2019. 5. 14.

빈은 속성과 메서드로 이루어져 있고, 데이터 처리를 한다.

자주 사용하는 코드를 따로 작성하여 재사용하기 위해 만들어진 클래스입니다.

 

자바빈(JavaBean)은 자바빈 규약에 따라 작성된 자바 클래스입니다.

프로그래밍 모듈화로 인한 복잡한 구성을 피하고 JSP 페이지의 로직 부분을 분리해서 코드를 재사용해 효율을 높이기 위해서 사용합니다. 

예를 들어 회원 정보, 게시판 글 등의 정보를 출력할 때

정보를 저장하고 있는 자바빈 객체를 사용하게 됩니다.

다음은 자바빈의 규약입니다.

1. 필드 마다 별도의 get/set 메서드가 존재해야 한다.

2. get 메서드는 파라미터가 존재하지 않아야 한다.

3. set 메서드는 반드시 하나 이상의 파라미터가 존재해야 한다.

4. 빈즈 컴포넌트의 속성은 반드시 읽기 또는 스기가 가능해야 하낟.

단, 읽기 전용인 경우 get 도는 is 메서드만 정의할 수 있다

5. 생성자는 파라미터가 없는 기본 생성자를 반드시 작성해 주어야 한다.

6. 필드의 접근 제어자는 private이고 각 set/get/ 메서드의 접근 제어자는

public으로 정의되어야 하며 클래스의 접근 제어자는 public 으로 정의한다.

 

****프로퍼티****

자바 클래스는 데이터를 저장하는 필드, 데이터를 읽어올 때 사용되는 메서드,

값을 저장할 때 사용되는 메서드로 구성합니다.

프로퍼티(Property)는 자바빈에 저장되어 있는 값을 나타내며

메서드 이름을 사용해서 프로퍼티(property)의 이름을 결정하게 됩니다.

 

예를 들어 프로퍼티의 이름이 name이고 값의 타입이 int인 경우

프로퍼티와 관련된 메서드의 이름은 다음과 같이 결정됩니다.

public void setName(int value);

public int getName();

 

프로퍼티의 타입이 boolean 인 경우 get 대신 is 를 붙일 수 있습니다.

 

즉, 프로퍼티의 값을 설정하는 메서드의 경우 프로퍼티의 이름 중 첫 글자를 대문자로

변환한 문자열 앞에 set을 붙이고

프로퍼티의 값을 읽어오는 메서드의 경우 프로퍼티의 이름 중 첫 글자를

대문자로 변홚나 문자열 앞에 get을 붙입니다.

프로퍼티의 이름과 필드의 이름은 같지 않아도 됩니다.

예를 들어 name 프로퍼티의 값을 실제로 저장하는 필드가 _name인 경우

private String _name;

 

public String getName(){

return _name;

}

 

public void setName(String name){

_name = name;

}

 

 

필드 는 프로퍼티가 아님 set 메서드의 존재의 유무임

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package javaBean;
public class BeanTest {
private String name;
public BeanTest() {}
//필드 값을 읽어오는 메서드
public String getName() {
    return name;
}
//필드 값을 저장하는 메서드 
public void setName(String name) {
    this.name = name;
}
 
}
 
Colored by Color Scripter

 

'IT > JSP' 카테고리의 다른 글

[JSP]자바빈 02  (0) 2019.05.14
[JSP]context  (0) 2019.05.14
[JSP]include로 화면 구현하기  (0) 2019.05.14
[JSP]include를 이용한 액션 테스트  (0) 2019.05.14
Forward Action 연습 1  (0) 2019.05.14