자바 빈이란

Mohammad Irfan 2023년10월12일
  1. Java에서 자바빈 생성
  2. Java에서 JavaBeans를 구현/액세스하는 방법
  3. Java에서 JavaBeans의 Setter 및 Getter
  4. 자바빈의 장점
자바 빈이란

이 튜토리얼은 Java에서 bean이 무엇인지 소개하고 주제를 이해하기 위한 몇 가지 예제 코드를 나열합니다.

JavaBeans는 많은 객체를 단일 객체(빈)로 캡슐화하는 클래스입니다. 다음과 같은 속성을 가지고 있습니다.

  1. 직렬화 가능한 인터페이스 가져오기
  2. 개인 필드
  3. 생성자
  4. getter / setter

클래스의 직렬화 가능성은 java.io.Serializable 인터페이스를 구현하는 클래스에 의해 활성화됩니다. 이 인터페이스를 구현하지 않는 클래스에는 직렬화 또는 역직렬화 상태가 없습니다.

외부 클래스가 해당 필드를 쉽게 수정할 수 없도록 필드는 비공개여야 합니다. 이러한 필드에 직접 액세스하는 대신 일반적으로 getter/setter 메서드가 사용됩니다.

객체를 생성하기 위해 0개 이상의 인수 생성자가 있을 수 있습니다.

개인 필드에 액세스하고 수정하기 위한 gettersetter 메서드가 있습니다.

이것은 Java에서 JavaBean의 기본 구조 또는 초안입니다.

// Implements Serializable interface
public class SimpleTesting implements Serializable {
  // private fields

  // no-args constructor

  // list of getters and setters
}

Java에서 자바빈 생성

여기에서 3개의 개인 필드, 1개의 기본 생성자, 1개의 매개변수화된 생성자와 데이터를 설정하고 가져오기 위한 getter 및 setter가 있는 Javabean 클래스 SimpleTesting을 만들었습니다. 아래 예를 참조하십시오.

import java.io.Serializable;
public class SimpleTesting implements Serializable {
  private int id;
  private String name;
  private int salary;

  public SimpleTesting() {}

  public SimpleTesting(int id, String name, int salary) {
    this.id = id;
    this.name = name;
    this.salary = salary;
  }
  public int getId() {
    return id;
  }
  public void setId(int id) {
    this.id = id;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getSalary() {
    return salary;
  }
  public void setSalary(int salary) {
    this.salary = salary;
  }
}

Java에서 JavaBeans를 구현/액세스하는 방법

JavaBeans를 구현하기 위해 해당 클래스의 객체를 생성할 수 있습니다. 여기서는 생성자에 값을 전달하고 getter를 사용하여 값에 액세스합니다. 아래 예를 참조하십시오.

public class Main {
  public static void main(String[] args) {
    SimpleTesting st = new SimpleTesting(1, "Rohan", 100000);
    System.out.println("id = " + st.getId());
    System.out.println("name = " + st.getName());
    System.out.println("salary = " + st.getSalary());
  }
}

출력:

id = 1
name = Rohan
salary = 100000

Java에서 JavaBeans의 Setter 및 Getter

여기서는 setters 메서드를 사용하여 값을 설정한 다음 getter 메서드를 사용하여 값을 얻습니다. 이것이 자바빈즈의 강점이다. 아래 예를 참조하십시오.

public class Main {
  public static void main(String[] args) {
    SimpleTesting st = new SimpleTesting();
    st.setId(1);
    st.setName("Rohan");
    st.setSalary(100000);
    System.out.println("id = " + st.getId());
    System.out.println("name = " + st.getName());
    System.out.println("salary = " + st.getSalary());
  }
}

출력:

id = 1
name = Rohan
salary = 100000

자바빈의 장점

Java Bean은 Java EE 전체에서 런타임 검색 및 액세스를 위한 범용 계약으로 사용됩니다. 예를 들어, JSP(Java Server Pages)는 페이지 간 또는 서블릿과 JSP 간의 데이터 전송 객체로 Java Beans를 사용합니다.