bean์ 2๋จ๊ณ๋ก ๋๋ ์ ์ฝํ๋ค.
@SpringBootApplication ์์ @ComponentScan์ @EnableAutoConfiguration์ด ์จ์ด์๋ค.
1๋จ๊ณ: @ComponentScan
@ComponentScan์ ์คํ๋ง ํ๋ ์์ํฌ๊ฐ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ด๋ค.
ํน์ ํจํค์ง ์ดํ์ ์๋ ๋ชจ๋ ํด๋์ค๋ฅผ ์ํํ๋ฉด์ ๊ทธ ์์ @Configuration, @Component, @Repository, @Service, @Controller, @RestController ๊ฐ์ ์ ๋ ธํ ์ด์ ์ด ๋ถ์ ํด๋์ค๋ฅผ ๋น์ผ๋ก ๋ฑ๋กํด์ค๋ค.
2๋จ๊ณ: @EnableAutoConfiguration
org.springframework.boot.autoconfigure.EnableAutoConfiguration
@EnableAutoConfiguration๋ ์คํ๋ง ๋ถํธ๊ฐ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ด๋ค.
์คํ๋ง ๋ถํธ๊ฐ ๋ง๋ ์ฌ๋ฌ ์๋ ์ค์ ์ ์ฌ์ฉํ๋๋ก ๊ธฐ๋ฅ์ ์กฐ๊ฑด์ ๋ฐ๋ผ ํ์ฑํ ์ํค๋ ์ญํ ์ ํ๋ค.
spring.factories ํ์ผ์ ํค ๊ฐ์ ์ค์ ๋ ํด๋์ค๋ค์ ์ฝ์ด๋ค์ธ๋ค.
๊ทธ๋ฐ๋ฐ spring.factories ํ์ผ์ ์ค์ ๋ ์๋ง์ ํด๋์ค(@Configuration)๋ค์ ๋ค ์ฝ์ด๋ค์ด๋ ๊ฒ์ด ์๋๋ค.
๋ณดํต @Import๋ผ๋ ์ ๋ ธํ ์ด์ ๊ณผ @ConditionalOnAaaBbbCcc์ ์กฐํฉ์ผ๋ก ์ฝ์ด๋ค์ธ๋ค.
์กฐ๊ฑด์ ๋ฐ๋ผ ๋น์ ๋ฑ๋กํ ์๋, ์ํ ์๋ ์๋๋ก ์ค์ ํ ๊ฒ์ด๋ค.
์๋์ค์ ๊ณผ ๊ด๋ จ๋ spring.factories์ ์์น
Maven:org.springframework.boot.spring-boot-autoconfigure:๋ฒ์ > META-INF > spirng.factories
'Springboot' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์คํ๋ง ๋ถํธ์ ๋ด์ฅ๋ tomcat ์๋ฒ ๋ณ๊ฒฝํ๋ ๋ฒ (0) | 2021.01.05 |
---|---|
์คํ๋ง ๋ถํธ์ ๋ด์ฅ ์น ์๋ฒ(๋ ์๋ฐํ ๋งํ๋ฉด WAS)์ ๋ํ์ฌ (0) | 2021.01.05 |
์คํ๋ง ๋ถํธ์ Auto Configuration ์ง์ ๊ตฌํํด๋ณด๊ธฐ (0) | 2021.01.05 |
Springboot ์์กด์ฑ ๊ด๋ฆฌ์ ๋ํ์ฌ (0) | 2021.01.05 |
intelliJ 'org.springframework.boot:spring-boot-starter-web:2.4.1' not found (0) | 2021.01.05 |
IntelliJ ์คํ๋ง ๋ถํธ ํ๋ก์ ํธ ์์ํ๊ธฐ (0) | 2021.01.05 |