728x90
Spring์ ์ฃผ์ ๊ธฐ๋ฅ / ํน์ง
- MVC
- DI
- AOP
- POJO
Spring MVC
- MVC: ์น ์ดํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ๋์์ธ ํจํด
- MVC๋ Model / View / Controller ์ ์ฝ์
- model, view, controller ๋ค์ด ์ ๊ธฐ์ ์ผ๋ก ๋์
- ๊ฐ๋ฐ์๊ฐ ์ง์ ์ปดํฌ๋ํธ๋ฅผ ํธ์ถํ์ง ์์๋ ์๋์ผ๋ก ๋ถ๋ฌ์ฃผ๋ฉฐ, ๋ฐ๋ณต์ ์ธ ์์ ์ ์ค์ฌ์ค
- ๋ฐ๋ผ์ ๊ฐ๋ฐ์๋ ํต์ฌ ๋ก์ง์ ์ง์คํ ์ ์์
[Spring MVC์ ์ฒ๋ฆฌ ๊ณผ์ ]
- DispatcherServlet์ด ํด๋ผ์ด์ธํธ๋ก ๋ถํฐ ์์ฒญ์ ๋ฐ์
- HandlerMapping์ ํตํด ์์ฒญ์ ํด๋นํ๋ Controller๋ฅผ ์ฐพ๊ณ
- ํด๋น Controller๋ก ์์ฒญ์ ๋ณด๋
- Contoller์์ ์์ ์ ์ํํ ํ ModelAndView๋ฅผ ๋ฐํ
- ViewResolver์์ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค View๋ฅผ ๊ฒฐ์
- DispatcherServlet์ด View๋ฅผ ํธ์ถ
- ํด๋ผ์ด์ธํธ์ ํด๋น View๊ฐ ๋ณด์ฌ์ง
DI
[Dependency Injection, ์์กด์ฑ ์ฃผ์ ]
๊ฐ์ฒด๊ฐ์ ์์กด ๊ด๊ณ๋ฅผ ๊ฐ์ฒด ์์ ์ด ์๋ ์ธ๋ถ ์กฐ๋ฆฝ๊ธฐ๊ฐ ์ํํด ์ฃผ๋ ๊ฐ๋
- Setter Injection
- xml ์ค์ ํ์ผ์ <property> ์ด์ฉํ์ฌ ์ค์
- Construction Injection
- xml ์ค์ ํ์ผ์์ <constructor-arg> ์ ์ค์
- ๋๋ @Autowired ์ด๋ ธํ ์ด์ ์ด์ฉํด์ ์ํ ํ ์ ์์
AOP
[Aspect Oriented Programmin, ๊ด์ ์งํฅ ํ๋ก๊ทธ๋๋ฐ]
- JAVA์ ๊ฒฝ์ฐ ๋ค์ค ์์์ด ๋ถ๊ฐ๋ฅ ํ๊ธฐ ๋๋ฌธ์ ๊ณตํต ๊ธฐ๋ฅ์ ์์ ๋ฐ๋ ๊ฒ์ ํ๊ณ๊ฐ ์๋ ๊ฒฝ์ฐ๊ฐ ์๊น
- OOP ๋ง์ผ๋ก ํด๊ฒฐํ ์ ์๋ ์์กด๊ด๊ณ์ ๋ณต์ก์ฑ๊ณผ ์ฝ๋ ์ค๋ณต์ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ
- ํต์ฌ ๊ธฐ๋ฅ๊ณผ ๊ณตํต๊ธฐ๋ฅ์ ๋ถ๋ฆฌํ์ฌ,
๊ณตํต ๊ธฐ๋ฅ์ ํ์๋ก ํ๋ ํต์ฌ ๊ธฐ๋ฅ๋ค์์ ์ฌ์ฉํ๋ ๋ฐฉ์ - ๊ณตํต ๋ชจ๋์ ์ฌ๋ฌ ์ฝ๋์ ์ ์ฉํ๋ ๊ธฐ๋ฒ
POJO
[Plain Old Java Object]
์คํ๋ง ์ปจํ
์ด๋์ ์ ์ฅ๋๋ ์๋ฐ ๊ฐ์ฒด๋ ํน์ ํ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๊ฑฐ๋ ํด๋์ค๋ฅผ ์์๋ฐ์ง ์์๋ ๋๋ค.
๋ฐ๋ผ์ ๊ธฐ์กด์ ์์ฑํ ํด๋์ค๋ฅผ ์์ ํ ํ์ ์์ด ์คํ๋ง์์ ์ฌ์ฉํ ์ ์๋ค.
'์คํ๋ง Spring > ๐งถ ์คํ๋ง ํ๋ ์์ํฌ Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
@Autowired ๋ .... ? (0) | 2021.06.22 |
---|---|
๋ง์ด๋ฐํฐ์ค(Mybatis)๋ฅผ ์ด์ฉํ insert, delete, update, select (0) | 2021.06.22 |
Spring MVC ํ๋ก์ ํธ์ ๊ธฐ๋ณธ๊ตฌ์กฐ (0) | 2021.04.27 |
์คํ๋ง ํ๋ ์์ํฌ - ๋ก๊ทธ (Log4j) ๋ฐ ์ธํฐ์ ํฐ (Interceptor) ์ค์ ๋ฒ (0) | 2021.04.27 |
์คํ๋ง ํ๋ ์์ํฌ - ๊ฐ ๋๊ธฐ๊ธฐ ๊ธฐ๋ณธ (0) | 2021.04.19 |
๋๊ธ