Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

Kim Hyeong

Component 본문

Spring

Component

김형완 2018. 8. 21. 10:48

[@Component]


 @Controller는 @Component을 상속한다.

 

<context:component-scan base-package=""/> 태그를 사용해서 스프링이 클래스(컴포넌트, 컨트롤러)를 검색할 패키지를 지정

<context:component-scan base-package=""/> 태그는 base-package에서 지정한 패키지에서 @Component가 적용된 클래스를

   검색해서 빈으로 자동 등록한다.


# 따라서, XML 설정 파일이 다양한 빈 정보를 추가하지 않더라도 된다.    

     

     * 설정파일에서는 <context:annotation-config>태그를 사용한다.

 

@Component("service01")

public class AbstractSvcImpl implements AbstractSvc {

private String name = "01";

@Override

public String getClassName(){

return "AbstractSvcImpl - "+name;

}

}


      설정파일에서 <bean>태그로 작성을 한다면

    <bean id="service01" class="com.spring.annotationEx.AbsractSvcImpl" />와 같은 방법

    

    @Component("service02")

public class AbstractSvcImpl02 implements AbstractSvc {

private String name = "02";

@Override

public String getClassName(){

return "AbstractSvcImpl - "+name;

}

}

    

      설정파일에서 <bean>태그로 작성을 한다면

    <bean id="service02" class="com.spring.annotationEx.AbsractSvcImpl02" />와 같은 방법

    

    

    

  [@Resource]  

     자바 6 및 JEE 5에 추가되었다.

     어플리케이션에서 필요로 하는 자원을 자동으로 연결할 때 사용한다. 스프링 2.5부터 지원하는 어노테이션

     스프링에서는 의존하는 빈 객체를 전달할 때 사용

     

     설정파일에서는

     <context:annotation-config>태그를 사용해야 한다.

     대신에

     <bean class="org.springframework.beans.factory.annotation.CommonAnnotationBeanPostProcessor"/>

     클래스를 빈으로 등록시켜 사용하는 방법이 있다.

     

   [@Autowired]

     - 의존관계 자동 설정(type 기반)  

     - 생성자, 필드, 메소드에 적용 가능

     - set 계열의 메소드가 아닌 메소드에도 적용 가능

     

     

     



'Spring' 카테고리의 다른 글

jquery Selectors, event  (0) 2018.10.30
Spring 트랜잭션  (0) 2018.08.21
유효성 검사  (0) 2018.08.21
스프링 DI(Dependency Injection) 2  (0) 2018.08.20
스프링 DI(Dependency Injection) 1  (0) 2018.08.20
Comments