본문 바로가기

Spring

bean 이란

반응형

 

resources/applicationContext.xml 파일안에 Bean을 등록한다.

 

이때 bean은 spring-beans.xsd 파일이 있어야지만 등록이 가능하다.

 

    <bean id="boss" class="basic.Boss" init-method="onCreated" destroy-method="onDestroyed"></bean>
    <bean id="employee" class="basic.Employee" init-method="onCreated" destroy-method="onDestroyed"></bean>

    <bean id="myWorkService" class="basic.WorkService">
        <property name="workManager">
            <ref bean="boss"/>
        </property>
    </bean>

    <bean id="yourWorkService" class="basic.WorkService">
        <property name="workManager">
            <ref bean="employee"/>
        </property>
    </bean>

 

bean id 값은 접근 할 때 사용하는 값이다 class는 객체가 존재하는 패키지.객체이름 으로 구성된다.

 

init-method destroy-method를 통해서 Bean의 생명주기에 함수들을 실행하여 직접 관리할 수 있다. 

 

property란 Bean이 생성시 bean setter에  전달할 인수를 의미한다. 즉 workManager에 이러한 값을 넘겨 주겠다는 것..

 

    public static void main(String ar[]){
        GenericXmlApplicationContext context = new GenericXmlApplicationContext(
                "classpath:applicationContext.xml"
        );

        WorkService myWorkService = context.getBean("myWorkService", WorkService.class);
        myWorkService.askWork();

        WorkService yourWorkService = context.getBean("yourWorkService", WorkService.class);
        yourWorkService.askWork();

        context.close();
    }

 

GenericXmlApplicatoinContext 즉 xml에 있는 Bean으로 등록된 녀석들로 사용하겠다는 것이다.

 

WorkService는 같은 객체이지만 Bean이 myWorkSErvice냐 yourWorkService에 따라서 들어가는 객체가 다르다는것을 알 수 있다.

반응형

'Spring' 카테고리의 다른 글

스프링 MVC  (0) 2020.08.09
@Configuration을 이용한 설정  (0) 2020.08.09
Spring : 이미지업로드 및 이미지 반환.  (0) 2020.07.31
스프링 Swagger 커스텀 마이징을 해보자  (0) 2020.07.24
Spring Token 만들고 검증하기  (0) 2020.07.23