Summary and What's next?
๋จ์ํ ์คํ๋ง์ ๋ฐฐ์ฐ๋ ๊ฒ์ด ์๋๋ผ ๊ฐ์ฒด์งํฅ์ ๋ํ ๋์ ์ดํด๊ฐ ํ์ํ๋ค!
์คํ๋ง ํต์ฌ ์๋ฆฌ ์ดํด 1,2 ์์ ์๋ฐ๋ก๋ง ์ฝ๋๋ฅผ ์์ฑํ์ ๋์ ๋ฌธ์ ์ : ๋จ์ํ ๊ฐ์ฒด์งํฅ ๋คํ์ฑ๋ง ๊ฐ์ง๊ณ ํด๊ฒฐํ์ง ๋ชปํ๋ ๋ฌธ์ ์ ์ ๋ด์ฐฉํ๋ค. => DI ์ปจํ ์ด๋์ ์์กด ๊ด๊ณ ์ฃผ์ ์ด ์์ด์ผ ๊ฐ์ฒด ์งํฅ ์ค๊ณ(ํ๋ก๊ทธ๋๋ฐ)์ ์ ๋๋ก ํ ์ ์๋ค!
์คํ๋ง ์ปจํ ์ด๋์ ์คํ๋ง ๋น ์ด ๋ชจ๋ ๊ฒ์ ํ๊ณ ๊ฐ๋ฅํ๊ฒ ํ๋ ์คํ๋ง ์ปจํ ์ด๋๋ผ๋ ๊ฒ์ด ์กด์ฌํ๊ณ , ์ปจํ ์ด๋๊ฐ ๋น ์ด๋ผ๋ ๊ฒ์ ์ด๋ป๊ฒ ๋ฑ๋กํ๋์ง, ์์กด ๊ด๊ณ๋ ์ด๋ป๊ฒ ์ฃผ์ ๋๋์ง ๋ฐฐ์ ๋ค.
์ฑ๊ธํค ์ปจํ ์ด๋ ์คํ๋ง์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฑ๊ธํค ์ปจํ ์ด๋๋ค. ๋๋ถ๋ถ์ ๊ธฐ๋ฅ์ ์ฑ๊ธํค์ผ๋ก ์ ์งํด์ค๋ค. =>@Configuration๊ณผ ์ฌ๋ฌ๊ฐ์ง ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
์ปดํฌ๋ํธ ์ค์บ @ComponentScan, @Component, @Autowired
์์กด๊ด๊ณ ์๋ ์ฃผ์ 1. Autowired(required=false) : ๋ฉ์๋ ์์ฒด๋ฅผ ์คํX 2. Nullable : Null์ ๋ฆฌํด 3. Optional : ์๋ฐ8๋ถํฐ ์ง์ํ๋ Optional์ ๊ฐ์ฒด๋ฅผ Optional๋ก ํ๋ฒ ๋ ๊ฐ์ธ๊ณ Null์ด๋ผ๋ ์ด Optional์ด๋ผ๋ ๊ฒ์ผ๋ก ํ๋ฒ ๋ ๊ฐ์ธ์ ์ ๊ณตํ๋ค.
๋น ์๋ช ์ฃผ๊ธฐ ์ฝ๋ฐฑ DI ์ดํ ์ด๊ธฐํ, ์ข ๋ฃ ์ฝ๋ฐฑ 1. ์ธํฐํ์ด์ค InitializingBean, DisposableBean 2. ๋น ๋ฑ๋ก ์ด๊ธฐํ, ์๋ฉธ ๋ฉ์๋ : ๋ฉ์๋ ์ด๋ฆ ์์ ๋กญ๋ค. ์ธ๋ถ๋ผ์ด๋ธ๋ฌ๋ฆฌ์๋ ์ ์ฉ๊ฐ๋ฅ 3. ์๋ฐ์์ ์ง์ํ๋ ์ ๋ ธํ ์ด์ @PostConstruct, @PreDestory
๋น ์ค์ฝํ 1. Singleton(๋ํดํธ) 2. Prototype 3. Web - request, session, application, websocket
Last updated