๐ป ๊ณต๋ถ ๊ธฐ๋ก/๐ Spring Spring | DI(Dependency Injection) - ํด๋น ๋ด์ฉ์ ๊ณต๋ถ์ ๋ชฉ์ ์ผ๋ก ๊ธฐ๋ก๋์์ผ๋ฉฐ,์๋ ๋ด์ฉ์ ๋ชจ๋ ๊ตฌ๊ธ ๊ฒ์์ผ๋ก ๊ณต๋ถ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์ฌ ์์ฑํ์ต๋๋ค.์ด์ฌํ ๋ฐฐ์ฐ๋ ์ค์ ๋๋ค. ๊ฐ์ฌํฉ๋๋ค. ๐ ์์กด์ฑ ์ฃผ์ DI(Dependency Injection) Spring ํ๋ ์์ํฌ๋ 3๊ฐ์ง ํต์ฌ ํ๋ก๊ทธ๋๋ฐ ๋ชจ๋ธ์ ์ง์ํ๊ณ ์๋ค. ๊ทธ ์ค ํ๋๊ฐ ์์กด์ฑ ์ฃผ์ (DI)์ด๋ค.์์กด์ฑ ์ฃผ์ (DI)์ด๋ ์ธ๋ถ์์ ๋ ๊ฐ์ฒด ๊ฐ์ ๊ด๊ณ๋ฅผ ๊ฒฐ์ ํด์ฃผ๋ ๋์์ธ ํจํด์ผ๋ก, ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ด์ ๋ฌ์ ํด๋์ค ๋ ๋ฒจ์์๋ ์์กด๊ด๊ณ๊ฐ ๊ณ ์ ๋์ง ์๋๋ก ํ๊ณ ๋ฐํ์ ์์ ๊ด๊ณ๋ฅผ ๋์ ์ผ๋ก ์ฃผ์ ํ์ฌ ์ ์ฐ์ฑ์ ํ๋ณดํ๊ณ ๊ฒฐํฉ๋๋ฅผ ๋ฎ์ถ ์ ์๊ฒ ํด์ค๋ค. ํ ๊ฐ์ฒด๊ฐ ๋ค๋ฅธ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ๋ ์์กด์ฑ์ด ์๋ค๊ณ ํจ. ๋ฐํ์ ์ ์์กด ๊ด๊ณ๋ฅผ ๋งบ๋ ๋์์ ์ธ๋ถ์์ ๊ฒฐ์ ํ๊ณ ์ฃผ์ ํด ์ค๋ค. ์คํ๋ง ํ๋ ์์ํฌ๋ DI ๊ธฐ๋ฅ์ ์ง์ํด์ฃผ๋ ํ๋ ์์ํฌ์ด๋ค. ์์กด์ฑ ์ฃผ์ ์ ์ฅ์ ์์กด์ฑ ์ฃผ์ ์ ์ธํฐํ์ด์ค ๊ธฐ๋ฐ์ผ๋ก ์ค๊ณํ๋ฉด, ์ฝ๋๊ฐ ์ ์ฐํด์ง๋ค. ๋์จํ ๊ฒฐํฉ๋(loose coupling) ์ค๊ณ ๋ณ๊ฒฝ์ ์ ์ฐํด์ง๋ค. ๊ฒฐํฉ๋๊ฐ ๋ฎ์ ๊ฐ์ฒด๋ผ๋ฆฌ๋ ๋ถํ์ ์ฝ๊ฒ ๊ฐ์๋ผ์ธ ์ ์๋ค. ์ถ์ฒ | ๋ง๋๋๊ฐ๋ฐ์ [Spring] ์์กด์ฑ ์ฃผ์ (Dependency Injection, DI)์ด๋? ๋ฐ Spring์ด ์์กด์ฑ ์ฃผ์ ์ ์ง์ํ๋ ์ด์ 1. ์์กด์ฑ ์ฃผ์ (Dependency Injection)์ ๊ฐ๋ ๊ณผ ํ์์ฑ [ ์์กด์ฑ ์ฃผ์ (Dependency Injection) ์ด๋? ] Spring ํ๋ ์์ํฌ๋ 3๊ฐ์ง ํต์ฌ ํ๋ก๊ทธ๋๋ฐ ๋ชจ๋ธ์ ์ง์ํ๊ณ ์๋๋ฐ, ๊ทธ ์ค ํ๋๊ฐ ์์กด์ฑ ์ฃผ์ (Dependency Inj mangkyu.tistory.com ๊ณต์ ํ๊ธฐ ๊ฒ์๊ธ ๊ด๋ฆฌ MOVEMENT.DEV '๐ป ๊ณต๋ถ ๊ธฐ๋ก > ๐ Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ Spring/Mybatis | Mybatis SqlSession (0) 2023.06.15 Spring | Reflection์ ์ฌ์ฉํ์ฌ Annotation ๊ฐ์ ธ์ค๊ธฐ (0) 2023.06.13 Spring | STOMP (1) 2023.04.17 Spring | Model๊ณผ ModelAndView (0) 2023.04.07 Spring | Interceptor(์ธํฐ์ ํฐ) / ๋ก๊ทธ์ธ ยท ์์ ์ฒ๋ฆฌ (0) 2023.02.28 Contents ๋น์ ์ด ์ข์ํ ๋งํ ์ฝํ ์ธ Spring/Mybatis | Mybatis SqlSession 2023.06.15 Spring | Reflection์ ์ฌ์ฉํ์ฌ Annotation ๊ฐ์ ธ์ค๊ธฐ 2023.06.13 Spring | STOMP 2023.04.17 Spring | Model๊ณผ ModelAndView 2023.04.07 ๋๊ธ 0 + ์ด์ ๋๊ธ ๋๋ณด๊ธฐ