์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- ํ๋ก๊ทธ๋๋จธ์ค
- jvm ๋ฐ๋ฐ๋ฅ๊น์ง ํํค์น๊ธฐ
- docker compose
- ์๋ฒ ํฐ์ง๋ ๋์ปค ์ฌ์คํ
- s3 ์ด๋ฏธ์ง ๋ค์ด๋ก๋
- ์ ํจ์ค ์ค์ผ์ค๋ฌ
- Kafka
- Entity
- redis ํ ์คํธ์ฝ๋
- prod docker-compose
- docker-compose kafka
- s3 ์ด๋ฏธ์ง ์ ์ฅ
- nGrinder
- private subnet ec2 ๋ก์ปฌ ์ ์
- JPA
- AWS Certified Solutions Architect - Associate
- docker
- ํ์ดํผ๋ฐ์ด์
- redis ์กฐํ
- ์ ํจ์ค ๋น๋ ์ค๋ฅ
- aws ์ฟ ํฐ
- ํ๋ก๊ทธ๋๋จธ์ค ํฉ์นํ์์๊ธ
- Codedeploy ์ค๋ฅ
- ์คํํ๋ ๋ฏธ์ค
- ํ๋ก๊ทธ๋๋จธ์ค ์ปฌ๋ฌ๋ง๋ถ
- docker ps -a
- s3 log ์ ์ฅ
- ๋ค์ค ์ปจํ ์ด๋
- ์๋ฐ
- aws saa ํฉ๊ฒฉ
- Today
- Total
๐๐ข๐๐ โ๐๐๐ ๐๐๐ก๐๐ ๐๐๐๐โง
[Spring] IoC ๋ณธ๋ฌธ
[Spring] IoC
๐คRyusun๐ค 2022. 12. 9. 12:47โญ IoC (Inversion of Control)
- ์ ์ด์ ์ญ์
- ์คํ๋ง ์ ํ๋ฆฌ์ผ์ด์ ์์๋ Object(Bean) ์ ์์ฑ๊ณผ ์์กด ๊ด๊ณ ์ค์ , ์ฌ์ฉ, ์ ๊ฑฐ ๋ฑ์ ์์ ์ ์คํ๋ง ์ปจํ ์ด๋๊ฐ ๋ด๋นํ๊ฒ ๋ฉ๋๋ค.
- ์ฆ ์คํ๋ง ์ปจํ ์ด๋๊ฐ Object์ ๋ํ ์ ์ด๊ถ์ ๊ฐ๊ณ ์๋ค๊ณ ํด์ IOC๋ผ๊ณ ํฉ๋๋ค.
- ๋ฐ๋ผ์ ์คํ๋ง ์ปจํ
์ด๋๋ฅผ IOC ์ปจํ
์ด๋๋ผ๊ณ ๋ถ๋ฆ
๋๋ค.
์ฆ, ์ ์ด์ ํ๋ฆ์ ๋ฐ๊พผ๋ค๋ ์๋ฏธ์ ๋๋ค. ๊ธฐ์กด์ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ์๊ฐ๋ฐ์๊ฐ class๋ฅผ ์์ฑํ๋ฉด new๋ฅผ ํตํด์ ์ง์ ๊ฐ์ฒด๋ฅผ ์์ฑํํ ์ฌ์ฉํ์์ง๋ง ์ฌ์ฉ์์ ์ ์ด์์ ๋ฒ์ด๋ Spring์ ์ํด ์์ฑ๋๊ณ ๊ด๋ฆฌ๋๋ฉฐ ์ด๋ ์์ฑ๋ ์๋ฐ ๊ฐ์ฒด๋ Bean์ด๋ผ๊ณ ํฉ๋๋ค.
๊ธฐ์กด๋ฐฉ๋ฒ | Spring |
1. ๊ฐ์ฒด ์์ฑ 2. ํด๋์ค ๋ด๋ถ์์ ์์กด์ฑ ๊ฐ์ฒด ์์ฑ(new) 3. ์์กด์ฑ ๊ฐ์ฒด ๋ฉ์๋ ํธ์ถ |
1. ๊ฐ์ฒด ์์ฑ 2. ์์กด์ฑ ๊ฐ์ฒด ์ฃผ์ (์ง์ ์์ฑํ๋๊ฒ ์๋๋ผ ์คํ๋ง์ด ๋ง๋ค์ด ๋์ ๊ฐ์ฒด๋ฅผ ์ฃผ์ ) 3. ์์กด์ฑ ๊ฐ์ฒด ๋ฉ์๋ ํธ์ถ |
์คํ๋ง์ด ๋ชจ๋ ์์กด์ฑ ๊ฐ์ฒด๋ฅผ ์คํ๋ง์ด ์คํ๋ ๋ ๋ค ๋ง๋ค์ด์ฃผ๊ณ ํ์ํ๊ณณ์ ์ฃผ์ ์์ผ์ค์ผ๋ก์จ Bean๋ค์ ์ฑ๊ธํด ํจํด์ ํน์ง์ ๊ฐ์ง๋๋ค. ๋ค์ ๋งํด ์ ์ด์ ํ๋ฆ์ ์ฌ์ฉ์๊ฐ ์ปจํธ๋กค ํ๋๊ฒ์ด ์๋๋ผ ์คํ๋ง์ด ์์์ ์์ ์ ์ฒ๋ฆฌํ๊ฒ๋ฉ๋๋ค.
๊ทธ๋ผ ๋์ฒด ์? ๊ฐ์ฒด์ ์์กด์ฑ์ ์ญ์ ์ํฌ๊น์??๐ค
- ๊ฐ์ฒด๊ฐ์ ๊ฒฐํฉ๋๋ฅผ ์ค์ฌ ์ ์ฐํ ์ฝ๋๋ฅผ ์์ฑํ ์์์ต๋๋ค.
- ์ฝ๋ ์ค๋ณต์ ์ค์ด๊ณ ์ ์ง ๋ณด์๊ฐ ํธ๋ฆฌํด์ง๋๋ค.
โญ IoC ์ปจํ ์ด๋
- ์คํ๋ง์์๋ Object(Bean)์ ์์ฑ๊ณผ ์์กด ๊ด๊ณ ์ค์ , ์ฌ์ฉ, ์ ๊ฑฐ ๋ฑ์ ์์ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋ ๋์ ์คํ๋ง ์ปจํ ์ด๋๊ฐ ๋ด๋นํฉ๋๋ค.
- ์ฆ ์คํ๋ง ์ปจํ ์ด๋๊ฐ Object์ ๋ํ ์ ์ด๊ถ์ ๊ฐ๊ณ ์๋ค๊ณ ํด์ IoC ๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
- ์คํ๋ง์์๋ IoC๋ฅผ ๋ด๋นํ๋ ์ปจํ ์ด๋๋ฅผ ๋นํฉํ ๋ฆฌ(BeanFactory ) , DI ์ปจํ ํ ์ด๋, ์ ํ๋ฆฌ์ผ์ด์ ์ปจํ ์คํธ(ApplicationContext) ๋ผ๊ณ ํฉ๋๋ค.
- ์คํ๋ง ์ปจํ ์ด๋์ DI ๋ฅผ ์ํ ๋น ํฉํ ๋ฆฌ์ ์ฌ๋ฌ๊ฐ์ง ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ฒ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ปจํ ์คํธ(ApplicationContext) ์ ๋๋ค.
BeanFactory (๋น ํฉํ ๋ฆฌ)
- ์คํ๋ง ์ปจํ ์ด๋์ ์ต์์ ์ธํฐํ์ด์ค
- ์คํ๋ง bean๋ฅผ ๊ด๋ฆฌํ๊ณ ์กฐํํ๋ ์ญํ ์ ๋ด๋นํ๋ค.
- ๋ํ์ ์ผ๋ก getBean() ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
ApplicationContext
- Bean Factory ๊ธฐ๋ฅ์ ๋ชจ๋ ์์๋ฐ์์ ์ ๊ณตํ๋ค.
- ๊ธฐ๋ฅ
- ํ๊ฒฝ๋ณ์
- ๋ก์ปฌ, ๊ฐ๋ฐ, ์ด์ ๋ฑ์ ๊ตฌ๋ถํด์ ์ฒ๋ฆฌํ๋ค.
- ์ ํ๋ฆฌ์ผ์ด์
์ด๋ฒคํธ
- ์ด๋ฒคํธ๋ฅผ ๋ฐํํ๊ณ ๊ตฌ๋ ํ๋ ๋ชจ๋ธ์ ํธ๋ฆฌํ๊ฒ ์ง์ํ๋ค.
- ํธ๋ฆฌํ ๋ฆฌ์์ค ์กฐํ
- ํ์ผ, Classpath ๋ฑ์์ ๋ฆฌ์์ค๋ฅผ ํธ๋ฆฌํ๊ฒ ์กฐํ๊ฐ ๊ฐ๋ฅํ๊ฒ ํด์ค๋ค.
- ํ๊ฒฝ๋ณ์
์ฐธ์กฐ
'๐ฃ๐ฟ๐ผ๐ด๐ฟ๐ฎ๐บ๐บ๐ถ๐ป๐ด๐ป > ๐๐ฉ๐ซ๐ข๐ง๐ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring] TestCode, TDD, JUnit, assertJ (0) | 2022.12.19 |
---|---|
[Spring] AOP (2) | 2022.12.11 |
[Spring] Bean, Component (0) | 2022.12.09 |
[Spring] Spring MVC ๊ตฌ์กฐ (0) | 2022.11.02 |
[Spring] Forward, Redirect, Session (2) | 2022.11.01 |