Spring 메모의 @Component 상세 해석
2. @ 서비스 (dao 주입)
3, @repository dao(dao 접근 가능)
4, @component (일반 포조를 스프링 용기에 실례화하면 프로필에 해당)
@Component, @Service, @Controller, @Repository 주석의 클래스를 spring 용기에 포함시켜 관리합니다
다음은 이것은component를 도입한 스캔 구성 요소입니다
1. @Service는 업무층 구성 요소를 표시하는 데 사용되고, @Controller는 제어층 구성 요소(예를 들어struts의 action)를 표시하는 데 사용되며, @Repository는 데이터 접근 구성 요소, 즉DAO 구성 요소를 표시한다.4. @Component는 구성 요소를 가리키며 구성 요소가 분류하기 어려울 때 이 주석을 사용하여 표시할 수 있습니다
@Component는 @Controller@Service@Repository@Aspect와 같은 다른 종류의 주석을 주석할 수 있는 메타 주석입니다.공식적인 원어는: 이 주석을 가진 클래스는 구성 요소로 간주되며, 주석을 기반으로 하는 설정과 클래스 경로 스캔을 사용할 때 이러한 클래스는 실례화됩니다.다른 클래스 레벨의 주석도 @Repository @Aspect 같은 특수한 유형의 구성 요소로 인정될 수 있습니다.따라서 @Component는 다른 종류의 주석을 주석할 수 있습니다.
소스 코드:
@Target({java.lang.annotation.ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface Component {
//이 값은 논리 구성 요소(즉 클래스)의 이름으로 자동 스캔할 때springbean, 즉 상당한 idpublic abstract Stringvalue()로 바뀔 수 있습니다. }
사례:
a. bean의 이름을 지정하지 않습니다. 기본값은 클래스 이름의 알파벳 소문자 university입니다.
@Component
public class University {
to do sthing...
}
bean을 가져오는 방법:
ApplicationContext ctx = new ClassPathXmlApplicationContext("./config/applicationContext.xml"); University ust = (University) ctx.getBean("university");
b. bean의 이름을 지정합니다.
@Component("university1")
public class University {
to do sthing...
}
bean을 가져오는 방법:
ApplicationContext ctx = new ClassPathXmlApplicationContext("./config/applicationContext.xml"); University ust = (University) ctx.getBean("university1");
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.