Spring Bean 라이프 사이클 소스 코드 분석

Spring Bean 라이프 사이클 소스 코드 분석

개요

Spring은 오랫동안 인기를 끌었습니다. Java로 작성된 경량 프레임 워크입니다. 많은 기업과 프로그래머가 환영합니다. Bean 라이프 사이클은 인스턴스화에서 파괴까지 객체의 전체 프로세스입니다. 라이프 사이클을 이해하는 것은 매우 중요합니다. 필요한.

중요성

봄의 수명주기는 더 복잡하며 그 과정과 원리를 이해해야 만 프로그램을 더 잘 확장 할 수 있습니다.

소스 코드 분석

라이프 사이클 프로세스

빈 인스턴스화

Spring Bean 라이프 사이클 소스 코드 분석

속성 채우기 및 인식 인터페이스 감지 설정 종속성

Spring Bean 라이프 사이클 소스 코드 분석Spring Bean 라이프 사이클 소스 코드 분석

컨테이너가 BeanpostProcessor의 구현 클래스를 사용자 정의하는 경우 해당 프로세서의 사전 처리를 수행합니다.

Spring Bean 라이프 사이클 소스 코드 분석

Bean은 초기화 인터페이스 InitlializingBean을 구현하고 해당 로직이 실행됩니다.

Spring Bean 라이프 사이클 소스 코드 분석

초기화 방법 init-method도 사용자 정의하십시오.

Spring Bean 라이프 사이클 소스 코드 분석

컨테이너가 BeanpostProcessor의 구현 클래스를 사용자 정의하면 해당 프로세서의 후 처리를 실행합니다.

Spring Bean 라이프 사이클 소스 코드 분석

파괴 된 콜백 빈 등록

Spring Bean 라이프 사이클 소스 코드 분석

빈은 폐기 인터페이스 DisposableBean을 구현하고 해당 로직이 실행됩니다.

Spring Bean 라이프 사이클 소스 코드 분석

동시에 파괴 방법도 사용자 정의됩니다.

Spring Bean 라이프 사이클 소스 코드 분석

프로세스 요청 요약

Spring Bean 라이프 사이클 소스 코드 분석
위의 순서도는 컨테이너 시작부터 폐기까지 전체 프로세스를 요약합니다.

요약하자면

1. 위의 소스 코드 분석에서 Spring의 Life Cycle은 크게 크게 네 부분으로 나눌 수있다.
1.
Bean 인스턴스화 2. Bean 속성 설정
3.
Bean 초기화 4. Bean 파괴
2. Aware 인터페이스 구현 . 대응하는 의존성이 주입 될
콩을 첨가, 예를 들면 스프링 AOP 프록시 객체를 반환 할 때, 셋째, 인터페이스 BeanPostProcessor 두 초기화 방법을 가지며, 이들 두 가지 방법이 매우 중요하다, 등의 파라미터 복호화
넷째, 수명은 사용 단순한 팩토리, 팩토리 방법, 싱글 톤 패턴, 어댑터 패턴 및 전략 패턴을 사용하여 더 나은 애플리케이션을 설계 할 수 있습니다.

추천

출처blog.51cto.com/xxdeelon/2540442