Spring 세 가지 bean 조립 방안
public class SpringBean {
public void say(){
System.out.println(" SpringBean");
}
}
1. 물론 입 니 다. 첫 번 째 는 우리 가 가장 스마트 한 조립 방안 이 고 자동 으로 조립 해 야 합 니 다.
자동 으로 조립 할 때 클래스 에 대한 주석 작업 을 보증 해 야 합 니 다. @Component / / 일반적인 구성 요소 설명 @ Controller / / 보통 웹 에 있 는 컨트롤 러 구성 요소 에서 @ Service / / 보통 service 서비스 구성 요소 에서 @ Repository / / 데이터 접근 및 조작 구성 요소 에 사 용 됩 니 다.
@Component//
//@Controller// web
//@Service// service
//@Repository//
// , , 。
public class SpringBean {
public void say(){
System.out.println(" SpringBean");
}
}
자동 조립 방안 에서 설명 에 이름 이 명확 하 게 지정 되 지 않 으 면 기본 bean 의 ID 는 클래스 이름 이 고 이니셜 은 자동 으로 소문 자로 변 합 니 다. 이름 을 지정 하면 지정 한 이름 을 bean 의 ID 로 합 니 다.
@Component("component")//
//@Controller("controller")// web
//@Service("service")// service
//@Repository("repository")//
public class SpringBean {
public void say(){
System.out.println(" SpringBean");
}
}
1.1 XML 파일 설정 자동 조립 방안
1.2 JavaConfig 설정 자동 조립 방안
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration// Spring
@ComponentScan("cn.sharek.test")// , “cn.sharek.test” POJO(Plain Old Java Object, Java
public class SpringRootConfig {
}
잘못 보지 않 았 습 니 다. 자바 코드 를 통 해 Spring 의 설정 을 실현 하 는 것 은 이렇게 간단 합 니 다. 그러나 만능 이 아 닙 니 다. 아직도 일부 설정 (Spring Web FLow...) 은 자바 코드 를 통 해 이 루어 지지 않 습 니 다. XML 파일 을 빌려 야 합 니 다.조급해 하지 마 세 요. 글 의 끝 에 혼합 설정 을 소개 합 니 다. XML 에서 자바 코드 를 가 져 오 는 설정, 자바 코드 에서 XML 을 가 져 오 는 설정 은 모두 가능 합 니 다.
2, XML 파일 을 통 해 수 동 으로 bean 편집
다음은 XML 을 통 해 수 동 으로 bean 을 편집 하 는 것 입 니 다. 물론 앞의 우리 에 게 유린 당 하 는 POJO 를 계속 사용 하 세 요.
지금: 이 bean 은 이미 사용 할 수 있 습 니 다.
만약 이 bean 이 속성 을 설정 하거나 주입 할 필요 가 없고 유일 하 게 파 라미 터 를 가 진 구조 방법 이 없다 면 이렇게 하 는 것 이 옳다.유일한 파 라 메 트릭 구조 방법 이 있 고 파 라 메 트릭 구조 방법 이 없 을 때 이렇게 하 는 것 은 잘못된 선택 입 니 다. 이 럴 때 구조 적 매개 변수 에 속성 치 를 설정 하거나 속성 치 를 주입 해 야 합 니 다.위 에서 설명 한 상황 을 어떻게 해 야 하 는 지 보 세 요.
public class SpringBean {
public SpringBean(String str) {
System.out.println(" str!!! :"+str);
}
public void say(){
System.out.println(" SpringBean");
}
}
물론, 우 리 는 여기에서 다 중 매개 변수의 상황 을 고려 하지 않 습 니 다. 왜냐하면 우 리 는 이것 이 bean 의 조립 방안 이기 때 문 입 니 다. 앞으로 다 중 매개 변수의 상황 을 어떻게 해 야 하 는 지, 조급해 하지 마 세 요.
3, 자바 Config 클래스 를 통 해 수 동 으로 bean 편집
나 는 이런 종류의 관 리 를 비교적 좋아한다.
@Configuration// Spring
public class SpringRootConfig {
@Bean//
public SpringBean springBean(){
return new SpringBean();
}
}
방법 명 은 bean 의 ID 입 니 다. 이 방법 이름 을 바 꾸 면 bean 의 ID 를 바 꿀 수 있 습 니 다.그럼요. 주 해 된 name 속성 을 통 해 지정 할 수 있 습 니 다.
@Configuration// Spring
public class SpringRootConfig {
@Bean(name="happy")//
public SpringBean springBean(){
return new SpringBean();
}
}
이제 그만 끝내 야 지.
No,No,No
또 재 밌 는 게 있어 요.
혼합 설정 이 죠.
자바 Config 클래스 에 자바 Config 클래스 를 섞 습 니 다.
@Configuration// Spring
@Import(ServiceConfig.class)//
//@Import({ServiceConfig.class,ControllerConfig.class})//
//@Import
public class SpringRootConfig {
}
자바 Config 클래스 에 자바 Config 클래스 와 XML 파일 을 섞 습 니 다.
물론 XML 파일 만 섞 어도 된다 는 것 은 잘못 이 없다.
@Configuration// Spring
@Import(ServiceConfig.class)//
@ImportResource("classpath:application.xml")// XML
public class SpringRootConfig {
}
XML 파일 에 XML 파일 섞 기
XML 파일 에서 자바 Config
혼합 설정 이 보기 좋 은 것 같 습 니 다. 파일 을 기능 이나 업무 에 따라 분리 할 수 있 습 니 다.그러나 주의해 야 할 것 은 중복 ID 의 bean 이 절대 나타 나 면 안 된다 는 점 이다.그렇지 않 으 면 Spring 은 당신 이 어떤 bean 을 사용 하고 있 는 지 잘 모 를 것 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.