Spring 프레임 워크 사용 개요

스프링 프레임 워크를 방금 배웠거나 배웠지 만 잊어 버린 사용자를 위해이 블로그를 다시 살펴보면
Maven 프로젝트 에서 다음 코드를 작성 하는 데 도움이 될 것입니다
. 스프링 프레임 워크를 사용하여 클래스 생성 및 테스트, Junit 사용시 수동으로 ApplicationContext 생성을 선택할 수 있습니다. 목적

    private ApplicationContext applicationContext;
    accountService = applicationContext.getBean("accountService",
                AccountService.class);

스프링을 사용하는 간단한 사례 :

여기에 사진 설명 삽입
이를 통해 스프링 프레임 워크를 사용한 후 객체를 생성하고 싶을 때 new를 다시 사용할 필요가 없어서 스프링 프레임 워크에 직접 전달하여이를 수행하도록하여 커플 링을 줄일 수 있음을 알 수 있습니다.

@RunWith () 주석을 사용
하여 멤버 변수 applicationContext 제거 하여 spring의 junit 통합을 사용할 수도 있습니다.
여기에 사진 설명 삽입

Bean 어노테이션을 작성하십시오.

@Controller는 제어 계층의 클래스에
사용됩니다. @Service는 비즈니스 계층 작업
에 사용됩니다. @Repository는 지속성 계층 작업에 사용됩니다
. 3 계층 아키텍처 이외의 @Component 클래스
정확히 말하면이 네 가지 주석은 모든 클래스에서 무료입니다. 네, 분류 수준을 구분하기 위해이 네 가지 다른 어노테이션이 생성됩니다.
네 개의 어노테이션은 동일한 효과를 갖습니다. 모두 스프링이 리플렉션을 사용하여 인스턴스화 된 객체를 생성하고 IOC 컨테이너에 추가하도록합니다.
여기에 사진 설명 삽입

어노테이션의 소스 코드를 살펴본 결과 네 개의 어노테이션 모두에 값 속성이 있음을 발견했습니다.
여기에 사진 설명 삽입
값 속성 어노테이션은 다음과 같이 변환됩니다.
이 값은 논리적 컴포넌트 이름이 권장됨을 나타낼 수 있습니다. 컴포넌트가 자동으로 감지되면 Spring Bean으로 변환됩니다.
값에 값을 할당하지 않을 경우 Bean의 id 값은 현재 클래스 이름이고 첫 문자는 소문자로 변경됩니다.
@Bean 주석도 Bean을 생성하지만이 주석은 메소드 및 주석에만 배치 할 수 있습니다
.이 주석 사용 : 메소드의 반환 값을 나타냅니다. Bean 객체로 IOC 컨테이너에 추가

@Bean 주석 소스 코드는 위의 4 개의 주석과 다른 것을 보여줍니다.
여기에 사진 설명 삽입

DI (종속성 주입)

인스턴스 객체를 생성 할 때 클래스에 할당해야하는 속성 (또는 멤버 변수)이 하나 이상있는 경우이 시점에서 Spring에이를 수행하도록 요청할 수 있습니다.

여기에 사진 설명 삽입
여기에 사진 설명 삽입
Autowired와 Qualifier를 사용하면 메소드 매개 변수 또는 멤버 변수 중 하나의 종속성 주입이 가능하고 Qualifier는 특정 태그 빈을 주입 할 수 있음을 알 수 있습니다.
여기에 사진 설명 삽입
위의 경우에 사용 된 @ComponentScan 주석은 xml 파일의
여기에 사진 설명 삽입
역할과 동일 합니다. 봄에 패키지를 스캔하도록 알리는 것입니다.

동적 프록시

Proxy 클래스의 newProxyInstance () 메서드를 사용하여 객체의 메서드를 향상 및 변환 할 수있는 동적 프록시 객체를 생성합니다 ( 원래 객체의 코드를 변경하지 않음을 기준으로 함 )
여기에 사진 설명 삽입
. 사용 예 :
여기에 사진 설명 삽입
테스트 결과 :
여기에 사진 설명 삽입
이 동적 프록시를 도입 이유는 Spring에서 제공하는 AOP 관련

5 가지 유형의 알림

전면
및 후면
예외가
최종적으로

래핑 됩니다. 처음 4 개의 알림은 실제로 주변 알림에 의해 축소 될 수 있습니다.
이와 유사하게
여기에 사진 설명 삽입
예외 알림은 catch 블록에 있고 최종 알림은 finally 블록에 있습니다.

다음과 같은 알림 클래스가 있다고 가정합니다.
여기에 사진 설명 삽입

여기에 사진 설명 삽입

연산 결과 여기에 사진 설명 삽입
는 위의 그림에서 볼 수 있으며 구현 클래스 메소드의 코드를 변경하지 않고 메소드를 수정할 수 있습니다.

추천

출처blog.csdn.net/Valishment/article/details/107577350