오늘, SpringBoot 시리즈도 가까이에 와서는 여전히 마치 신선한 우리의 기억에, 원래의 장면 플래그 스탠드를 기억합니다. 달의 완공 및 SpringBoot 기사로 구성? 나는 당시 생각 때문에 그리고, 환상적인 계획을 설정합니다. 프로세스가 어렵지만, 결말은 꽤 완벽한, 지난 글에서 완전한 순간이지만 그러나 기분은 아마에 익숙한, 내가 생각하는, 매우 침착하다.
시리즈의 끝에서, 다음 SpringBoot이 요약을, 그것은 먼지으로 안정을 간주 될 수 있습니다.
본문
같은 임베디드 서버, 보안, 인덱스 및 외부 건강 검진으로 (범용 비 기능적 기능을 대규모 프로젝트의 시리즈를 제공한다; SpringBoot 가장 주목할만한 특징은 봄 응용 프로그램의 봄 기능 모두를위한 더 광범위한 지원을 제공하는 빠른 시작이다 처분) 어떤 코드 생성, XML 구성의 필요성은 강조하지 않습니다.
기사의이 시리즈는 센터로 SpringBoot을 논의했지만 그 기본 핵심 SpringBoot 봄, 봄이 잘 알고있는 경우 그 SpringBoot 학습 내리막이기 때문에, 또한, 봄의 기술 스택과 관련.
1, 자동 조립베이스
사용 봄 주석, 대략 다음 범주로 구분 노트의 많은에 SpringBoot :
- 구성 참고 : 구성 @, ComponentScan @ 가져 오기 @, 조건, 콩 @
- 모드 참고 : Componnt @, 저장소 @ 서비스 @, 컨트롤러 @
- 注解 模块 @Enable : @ EnableWebMvc, @ EnableTransactionManagement, @ EnableWebFlux
구성 노트는 치료의 봄 ConfigurationClassParser의 # doProcessConfigurationClass 방법으로 수행되어, 후속 기사의 봄 시리즈에서 상세하게 설명한다; ComponentScan 레이블 스캔 @ 모드 노트, @Component 메모를 도출, @Component 메모를 표시됩니다 @Component
및 파생 주석을 클래스이 클래스 스프링 용기에 넣고, @Enable
모듈에 의해 주석 @Import
구성 클래스를 가져,이 종류의 구성은 장착 @Enable
부품 모듈이 필요.
2 자동 조립체
참조 "SpringBoot (II) 텍스트를 autowiring에"
에서 SpringBoot
시간, 주요 방법으로 당신은 기본에 의존하는 응용 프로그램을 시작할 수 있습니다 Spring
몇 가지주의를. 로부터 @SpringBootApplication
의 주석 @EnableAutoConfiguration
개시 주석 @EnableAutoConfiguration
속하는 주석 의해 주석 모듈 도입 클래스는 클래스의 모든로드 될 접미사로 표시하고 기반 주석을 자동으로 구성, 각 클래스는 웹과 같은 외부 모듈 구성에 자동으로 장착 될 수있다 MVC 모듈 구성 대응하는 클래스이다 . 많은 자동 구성의 또 다른 클래스에서 조건 주석 유연한 어셈블리를 달성 할 수있다.Spring
@Enable
@Import
AutoConfigurationImportSelector
AutoConfiguration
@Configuration
WebMvcAutoConfiguration
@Conditional
3 급 SpringApplication 기동 준비 단계
참조 "SpringBoot (3 개) SpringApplication 시작 클래스 준비 단계를"
건설에서 SpringApplication
시작 클래스, 다음과 같은 몇 가지 중요한 범주를, 초기화 WebApplicationType
, ApplicationContextInitializer
, ApplicationListener
. 어디 WebApplicationType
저장은 서블릿 웹, 반응성 웹으로 현재 응용 프로그램 유형이있다, ApplicationContextInitializer
그리고 ApplicationListener
하는 SpringBoot
봄을 확장하여 만든 초기화 및 청취자 있습니다.
4 급의 연산 SpringApplication 시작 위상
참조 "SpringBoot은 (사) SpringApplication 클래스는 단계를 실행 시작"
에서 SpringApplication
작동 제 나아가서 상 Spring
에기구를 모니터링하는 SpringBoot
다른 이벤트의 다양한 단계를 게시 여러 이벤트 리스너를 실행 한 후 크리에이트 Environment
코어 클래스 구성 밖에 클래스를, 그리고 마지막으로 시작 Spring
컨테이너에 의해 WebApplicationType
현재의 어플리케이션 유형을 판단하여 애플리케이션을 만들 대응 ApplicationContext
애플리케이션 컨텍스트 다음 호출 ApplicationContext#refresh
방법 개시 용기.
5 환경의 외형
를 참조하십시오 "환경의 외부 구성의 SpringBoot (e)를"
이 문서는 특성, YAML, 환경 변수, 시스템 특성, 시작 매개 변수와 같은 외부 구성 자원의 몇 가지 유형을 설명합니다. 또한 상세 Environment
코어 클래스의 외부 구성 인 클래스, 구체화 된 모든 구성 데이터 클래스에 저장하고, 저장하고, 우리는 전체 프로세스를 설명한다.
@ConfigurationProperties 6의 외형
참조 "@ConfigurationProperties의 외부 구성의 SpringBoot (F)를"
@ConfigurationProperties
이다 SpringBoot
과, 구성의 외부 주석을 인식하는 것이 중요 SprinBoot
조립 자동화 급속한 발전을 달성 할 수 있습니다. 주요 구성 파일 및 속성 구성 클래스 속성 매핑의 속성, 우리는 또한 전체 매핑 프로세스를 논의했다.
7, 내장 웹 컨테이너
이 문서 작성 및 출시 컨테이너에 대해 설명합니다. 기존의 Spring
응용 프로그램은 수동으로, 웹 컨테이너를 생성하고 실행해야합니다 SpringBoot
, 그것은 생성하고 시작 자동으로 삽입되는 방식을. SpringBoot
웹 컨테이너 유형이 지원되고 용기가 특정 실현, 해당 웹 Sevlet이 서블릿 컨테이너 반응성 웹 웹 컨테이너, Tomcat
,, Jetty
, Undertow
디폴트의 구현을 Tomcat
반응성 웹 해당한다 Netty
.
8, 사용자 정의 스타터 스타터 메커니즘
참조 "사용자 정의 스타터 (팔) 스타터 메커니즘 SpringBoot을"
이 문서에서는 자세히 설명 메커니즘 및 사용자 정의에 의해 깊이 전체 작동 메커니즘을 이해하기. 또한 중요한 특징은 통합하여 의존, 개발 과정을 단순화하고 프로젝트를 빌드합니다.SpringBoot
Starter
Starter
Starter
SpringBoot
Starter
발문
여기 말에 요약 기사는 마지막으로, 강과 호수 길은 우리가 다음 시리즈를 참조 깁니다.