Web develop/JAVA

[JAVA] 자바빈즈(JavaBeans)

ForA 2019. 4. 24. 18:16
728x90

: 서로 관련성 있는 속성을 묶어주는 클래스(객체)

사용하는 곳에 따라 VO 또는 DTO 라는 이름을 사용하기도 함

  • VO : Value Object(데이터들을 묶어주는 객체)
  • DTO : Data Transfer Object (데이터를 전송해주는 객체)

자바빈즈 규칙

  • 속성데이터를 private하게 선언

  • public 선언된 주고받는 메소드를 정의

  • public한 기본생성자, 오버로딩 생성자를 정의할 수 있다

  • 반드시 속성의 수와 일치하는 get, set이 정의되지 않아도 된다.

    
    public class Person{
      private String name;
        private int age;
        private String job;   
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getName() {
            return name;
        }
    
        public void setAge(int age){
            this.age = age;
        }
    }//class
    
    =====main()===
    Person p = new Person() ;
    
    p.name = "홍길동"; //에러발생
    p.setName("홍길동"); //이름정보 주기(설정) 실행됨
    
    System.out.println(p.name); //에러발생
    System.out.println( p.getName() ); //이름정보 받기(얻기) "홍길동" 출력: 실행