ํฐ์คํ ๋ฆฌ ๋ทฐ
Spring DI / IoC
java์ Class์์, Interface๋ฅผ ์ด์ฉํ ์ถ์ํ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๊ฐ๋ฐ๋ฐฉ๋ฒ์ผ๋ก
Spring์ DI/IoC๋ฅผ ๊ฐ๋ ฅํ๊ฒ ์ง์ํ๋ ํ๋ ์์ํฌ์ด๋ค.
- Ioc (Invension of Control) ์ ์ด์ ์ญ์
ํ๋ก๊ทธ๋จ์ ์ ์ดํ๋ ํจํด ์ค ํ๋๋ก ๋ฏธ๋ฆฌ ๊ฐ์ฒด๋ฅผ ์์ฑํด ๋๊ณ ๊บผ๋ด์ ์ฌ์ฉํ๋ ๋ฐฉ์
- DI (Dependency Injection) ์์กด์ฑ ์ฃผ์
์คํ๋ง ์ปจํ ์ด๋์ ๋ง๋ค์ด๋ ๊ฐ์ข ํด๋์ค(bean)๋ค์ ์๋ก ์์กด์ ์ด๋ค.
ํ๋ก๊ทธ๋๋ฐ์์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด์ ์ธ๋ถ์์ ๋ฐ๋ก ์ฃผ์ ํ๋ ๋ฐฉ๋ฒ
DI๋ IoCํจํด์ ๊ตฌํ๋ฐฉ๋ฒ ์ค ํ๋๋ก DI์ ๋ฐ๋ผ ํ๋ก๊ทธ๋จ์ ํ๋ฆ์ด ์์ ํ ๋ณ๊ฒฝ๋๋ค.
์คํ๋ง์ DI๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ง์ ํ๋ ์ ์ํฌ ๋ชจ๋๋ค์ด ๋ง๋ค์ด์ง๋ค.
Spring์ DI Framework ํน์ IoC Framework๋ผ๊ณ ๋ถ๋ฅธ๋ค.
์์กด์ฃผ์ ํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ (xml ํ์ผ์ ํตํด ์ด๋ฃจ์ด์ง๋ค)
1. ์์ฑ์๋ฅผ ํตํ ์์กด์ฑ ์ฃผ์
public Hotel(Chef chef) {
this.chef = chef;
}
↓
<bean id="hotel" class="day01.ex01.construct.Hotel">
<constructor-arg ref="chef" />
</bean>
id="๊ฐ์ฒด์ด๋ฆ", class="ํด๋์ค๊ฐ ์์นํ ๊ฒฝ๋ก"
2. setter๋ฅผ ํตํ ์์กด์ฑ ์ฃผ์
public void setUrl(String url) {
this.url = url;
}
public void setUid(String uid) {
this.uid = uid;
}
public void setUpw(String upw) {
this.upw = upw;
}
↓
<bean id="DBdev1" class="day01.ex03.setter.DatabaseDev">
<property name="url" value="jdbc:mysql://localhost:3306/test/"></property>
<property name="uid" value="spring"></property>
<property name="upw" value="spring"></property>
</bean>
name="์ธํฐ์์ด๋ฆ", value="๋ด๊ฐ ๋ฃ๊ณ ์ถ์ ๊ฐ", ref="๊ฐ์ฒด"
'(๊ตฌ)Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring] 6. ์์กด๊ฐ์ฒด ์๋์ฃผ์ (์ด๋ ธํ ์ด์ ) (0) | 2019.06.06 |
---|---|
[Spring] 5. ๋น(Bean)์ ๋ฒ์ (0) | 2019.06.06 |
[Spring] 3. ์คํ๋ง ์ปจํ ์ด๋ ์ฌ์ฉํ๊ธฐ (0) | 2019.05.30 |
[Spring] 2. ๋ฉ์ด๋ธ( Maven ) (0) | 2019.05.30 |
[Spring] 1. ์คํ๋ง์ ๊ฐ์ (0) | 2019.05.23 |
- Total
- Today
- Yesterday
- mysql์ค์น
- Algorithm
- Java
- ์๋ฃ๊ตฌ์กฐ
- ๊ฐ๋ฐ
- ๊ฒ์ํ๋ง๋ค๊ธฐ
- ๋ณ๋ช ์ฒ๋ฆฌ
- ๊ฒ์ํ ์ญ์
- ๊ฐ๋ฐํ๊ฒฝ๊ตฌ์ถ
- java ํ๊ฒฝ๋ณ์
- tomcat์ค์น
- ๊ฒ์ํ ์กฐํ
- ์คํ๋ง๋ถํธ ์๋์์ฑ
- ์จ๋ฆฌ์์ค
- ๊ฒ์๋ฌผ ์ญ์
- ์๋ฐ
- ์ ์ฒด๊ฒ์๋ฌผ ์กฐํ
- ๋ถํธ ์๋์์ฑ
- java jdk ์ค์น
- ์๊ณ ๋ฆฌ์ฆ
- ๊ฒ์๋ฌผ์กฐํ
- ์ดํด๋ฆฝ์ค ํ๊ธ ์ธ์ฝ๋ฉ
- ์ดํด๋ฆฝ์ค ์ค์น
- typeAliases
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 | 29 | 30 |