기은P
시간이 멈추는 장소
기은P
  • Programming (272)
    • 개발노트 (1)
    • FrontEnd (56)
      • ES&JS 문법 (14)
      • HTML&CSS (4)
      • React 기본 (18)
      • React 심화 (12)
      • React 이슈 (2)
      • Project 연습 (1)
      • Next.js (5)
    • Backend&Devops (33)
      • AWS (2)
      • Docker (9)
      • Jenkins (6)
      • Nginx (6)
      • Node.js (1)
      • ElasticSearch (5)
      • 프레임워크&아키텍처 (2)
      • 암호화 (0)
      • 기타 (2)
    • 알고리즘 (3)
    • C# (8)
      • WPF (8)
    • Java (51)
      • 순수 Java (18)
      • RDF&Jena (12)
      • RCP&GEF (9)
      • JMX (5)
      • JMapper (3)
      • 오류해결 (4)
    • Database (21)
      • RDBMS (9)
      • NoSQL (2)
      • TSDB (1)
      • GraphQL (1)
      • Hibernate (3)
      • 데이터베이스 이론 (4)
      • Redis (1)
    • 프로토콜 (11)
      • Netty (4)
      • gRPC (5)
      • 프로토콜 개념 (2)
    • Server (4)
      • Linux (4)
    • 2020 정보처리기사 필기 (43)
      • 목차 (1)
      • 기출문제 (1)
      • 1과목 - 소프트웨어 설계 (6)
      • 2과목 - 소프트웨어 개발 (7)
      • 3과목 - 데이터베이스 구축 (8)
      • 4과목 - 프로그래밍 언어 활용 (7)
      • 5과목 - 정보시스템 구축 관리 (10)
    • 2020 정보처리기사 실기 (31)
      • 목차 (4)
      • 기출예상문제 (19)
      • 실기요약 (8)
    • 빅데이터분석기사 필기 (4)
      • 목차 (0)
      • 필기 요약 (3)
    • 전기 공학 (1)
      • CIM (1)
    • 산업자동화시스템 (3)
      • SCADA (1)
      • OPC UA (2)
    • 디자인패턴 (1)
    • 휴지통 (0)

공지사항

  • 공지사항/포스팅 예정 항목

최근 댓글

최근 글

전체 방문자
오늘
어제

티스토리

hELLO · Designed By 정상우.
기은P

시간이 멈추는 장소

Java/순수 Java

[Java] Java Bean이란?

2020. 3. 16. 11:20
반응형
Java Bean이란?

 

1) 특정한 정보(id, password, name, job)을 가지고 있는 클래스를 표현하는 하나의 규칙이며 데이터를 표현하기 위한 목적을 지니고 있다. 이 규칙을 지닌 클래스를 Java Bean이라고 한다.

 

 * 반드시 클래스는 패키지 되어야 함

 * 멤버변수는 프로퍼티(property)라고 함.

 * 멤버변수는 private로 지정하고, 외부접근을 위한 get, set 메소드 정의해야 한다.

 * Get, set 메소드는 public으로 지정한다.

 

 

 

2)     쉽게 말해서 Model, View, Controller의 MVC 패턴에서 데이터를 표현해주는 Model에서 사용하기 위한 표현의 형태라고 보면 된다.

 

 

 

3)     왜? Model에서 Java Bean형태로 사용하나? 어떠한 프로젝트를 구성할 때 사용되는 데이터의 집합이 생기기 마련이다. 학생 정보나, 학교 정보. 도로명 주소나 부품 정보 등 데이터를 관리하고 데이터를 사용해야 한다. 이런 데이터를 사용할 때 각 클래스마다 정해진 규칙이 없다면 일관성에 위배되기 때문에 효율이 낮아지게 된다.

 

 

 

4)     예를 들어 데이터베이스를 통해 학생 정보를 조회, 수정하는 기능을 만들려고 할 때, 기능 마다 id, name, 학년에 대한 변수를 그때마다 생성해서 사용하면 효율이 떨어지기 마련이다. 공통된 정보, 공통된 정보를 관리하는 기능에서 편리하게 사용하기 위해 규칙성 있는 형태로 데이터의 집합을 만든 것이라고 생각하면 된다.

 

 

 

5)     후에 이런 bean형태를 근간으로 xml형태의 beans에서 property를 통해 java bean으로 정의된 클래스를 export하거나 import하거나, 일관된 데이터는 다른 프로그램에서도 확장성 있게 사용할 수 있게 된다.

 

 

<beans>
  <bean id="testBean"   class="org.springframework.jmx.JmxTestBean">
    <property name="name" value="TEST"/>
    <property name="age" value="100"/>
  </bean>
</beans>

 

 

Java Bean의 예제

 

 

public class Student { 
    private String id;
    private String name;
    private String grade;    
    public Student() {
        
    }
 
    public String getId() {
        return id;
    }
 
    public void setId(String id) {
        this.id = id;
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public String getGrade() {
        return grade;
    }
 
    public void setGrade(String grade) {
        this.grade = grade;
    }
    
}
반응형
저작자표시 변경금지 (새창열림)

'Java > 순수 Java' 카테고리의 다른 글

[Java] Eclipse 텍스트 더블 클릭시 하이라이트 유지하는 방법  (0) 2020.04.07
[Java] Java Project에 Maven 설치(컨버트)  (0) 2020.03.19
[Java] Eclipse 이클립스 크롬 연동하기(Web Browser 연동)  (0) 2020.03.13
[Java] SWT Tree와 Map을 활용한 Directory 출력 예제 소스  (0) 2020.03.12
[Java] SWT Tree 사용 예제  (0) 2020.03.12
    'Java/순수 Java' 카테고리의 다른 글
    • [Java] Eclipse 텍스트 더블 클릭시 하이라이트 유지하는 방법
    • [Java] Java Project에 Maven 설치(컨버트)
    • [Java] Eclipse 이클립스 크롬 연동하기(Web Browser 연동)
    • [Java] SWT Tree와 Map을 활용한 Directory 출력 예제 소스
    기은P
    기은P
    기은P의 블로그 일상과 개발 관련 포스팅 #React #Typescript #Next #Nest https://github.com/kimdongjang

    티스토리툴바