더북(TheBook)

3.4.2 BeanFactory 구현체

BeanFactory 인터페이스에 대한 설명이 지나치게 복잡하게 느껴질 수도 있지만 실제로는 그렇지 않습니다. 간단한 예를 살펴보겠습니다. 삶의 의미를 알려주는 오라클(oracle, 신탁)을 모방한 예제를 살펴보겠습니다.

예제 3-11 Oracle 인터페이스와 BookwormOracle 클래스([[setter-injection]] Oracle.java, BookwormOracle.java)

//인터페이스
package com.apress.prospring5.ch3;

public interface Oracle {
    String defineMeaningOfLife();
}

//구현체
package com.apress.prospring5.ch3;

public class BookwormOracle implements Oracle {
    private Encyclopedia encyclopedia;

    public void setEncyclopedia(Encyclopedia encyclopedia) {
        this.encyclopedia = encyclopedia;
    }

    @Override
    public String defineMeaningOfLife() {
        return "Encyclopedias are a waste of money - go see the world instead";
    }
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.