Spring | Dependency Injection(DI)와 Bean | 인터페이스 및 Bean 클래스 생성

그러면 실제로 간단한 예제를 만들면서 DI의 기본을 설명하고 가자. 우선 Bean 클래스를 만들자. 이번에는 하나의 메시지를 보관하는 단순한 Bean을 마련하기로 하자.

지난번 만든 프로젝트 “MySpringApp"의 com.devkuma.spring 패키지 아래 목록 란에 게재 된 인터페이스와 클래스를 작성하자.

SampleBeanInterface은 Bean의 내용을 정의하는 인터페이스이다. 여기에 메시지를 교환 할 getMessage / setMessage 두 가지 방법만 사용할 수 있도록 한다.

SampleBeanInterface 인터페이스

package com.devkuma.spring;
 
public interface SampleBeanInterface {
    public String getMessage();
    public void setMessage(String message);
}

이를 구현한 클래스가 SampleBean이다. message라는 String의 속성과 toString 메서드를 재정의 하였다. 아무런 특색도 없는 단순한 Bean 이다.

“이렇게 간단한 것인데 어째서 인터페이스에서 만들지 않으면 안 돼?“라고 생각했을지도 모른다. Spring Framework의 Bean 이용은 별도 인터페이스에서 만들지 않아도 사용할 수 있다. 단, Bean의 일반적인 사용법이 이미지될 수 있도록, 이번에는 인터페이스부터 만들어 두었다.

SampleBean 클래스

package com.devkuma.spring;
 
public class SampleBean implements SampleBeanInterface {
    private String message;
     
    public SampleBean() {
        message = "(no message)";
    }
     
    public SampleBean(String message) {
        this.message = message;
    }
 
    public String getMessage() {
        return message;
    }
 
    public void setMessage(String message) {
        this.message = message;
    }
 
    @Override
    public String toString() {
        return "SampleBean [message=" + message + "]";
    }
}