๊ฐœ๋ฐœ๐Ÿ’ป/Java

[Java] Spring Framework

VIP 2023. 10. 2. 13:27
728x90
๋ฐ˜์‘ํ˜•

 

 

1. ์šฉ์–ด ์ •๋ฆฌ

  • POJO : Plain Old Java Object
  • EJB : Enterprice JavaBeans
  • DL : Dependency Lookup
  • DI : Dependency Injection
  • AOP : Aspect Oriented Programming, ๊ด€์  ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ
  • IoC : Inversion of Control

 

2. Spring Framework

  • 2003๋…„ 6์›”์— ์ถœ์‹œ๋œ Java ๊ธฐ๋ฐ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ
  • JVM์—์„œ ๋™์ž‘ํ•˜๋ฉฐ ์•„ํŒŒ์น˜ ๋ผ์ด์„ ์Šค 2.0์„ ๋”ฐ๋ฅด๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ”„๋ ˆ์ž„์›Œํฌ
  • ํ•œ๊ตญ ์ „์ž์ •๋ถ€ํ‘œ์ค€ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ์ด๋ฉฐ ํ•œ๊ตญ์ •๋ณดํ™”์ง„ํฅ์›์—์„œ๋Š” ๊ณต๊ณต๊ธฐ๊ด€์˜ ์›น ์„œ๋น„์Šค ์ œ๊ณต ์‹œ ์Šคํ”„๋ง์„ ๊ถŒ์žฅํ•˜๊ณ  ์žˆ์Œ
  • ์Šคํ”„๋ง ๋ถ€ํŠธ : ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐ„ํŽธํ•˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ์„œ๋ธŒ ํ”„๋กœ์ ํŠธ

 

3. Spring Framework ํŠน์ง•

  • ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ์˜ ํŠน์ง•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.
ํŠน์ง• ๋‚ด์šฉ
POJO Plain Old Java Object
๋ณ„๋„ ํ”„๋ ˆ์ž„์›Œํฌ ์—†์ด Java EE๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋น„ํ•ด ํŠน์ • ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๊ฑฐ๋‚˜ ์ƒ์†๋ฐ›์„ ํ•„์š”๊ฐ€ ์—†์–ด ๊ธฐ์กด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ง€์›ํ•˜๊ธฐ ์šฉ์ดํ•˜๊ณ  ๊ฐ์ฒด๊ฐ€ ๊ฐ€๋ณ๋‹ค.
AOP Aspect Oriented Programming
๋กœ๊น…, ํŠธ๋žœ์žญ์…˜, ๋ณด์•ˆ ๋“ฑ ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.
DI Dependency Injection
๊ตฌ์„ฑ์š”์†Œ๊ฐ„์˜ ์˜์กด ๊ด€๊ณ„๊ฐ€ ์†Œ์Šค์ฝ”๋“œ ๋‚ด๋ถ€๊ฐ€ ์•„๋‹Œ ์™ธ๋ถ€์˜ ์„ค์ •์„ ํ†ตํ•ด ์ •์˜๋˜๋Š” ๋ฐฉ์‹
์ฝ”๋“œ ์žฌ์‚ฌ์šฉ์„ ๋†’์ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ชจ๋“ˆ๊ฐ„์˜ ๊ฒฐํ•ฉ๋„๋„ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ณ„์ธต๊ณผ ์„œ๋น„์Šค๊ฐ„์˜ ์˜์กด์„ฑ์ด ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ์ด๋ฅผ ์—ฐ๊ฒฐ
IoC Inversion of Control
๊ธฐ์กด ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ ํ”„๋กœ๊ทธ๋žจ์ด ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ตฌ์กฐ์˜€์ง€๋งŒ, ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ๋Š” ์ œ์–ด๊ถŒ์ด ํ”„๋ ˆ์ž„์›Œํฌ์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ํ•„์š”์— ๋”ฐ๋ผ ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ๊ฐœ๋ฐœ์ž์˜ ์ฝ”๋“œ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Œ
์ƒ๋ช…์ฃผ๊ธฐ ๊ด€๋ฆฌ Java ๊ฐ์ฒด์˜ ์ƒ์„ฑ, ์†Œ๋ฉธ์„ ์ง์ ‘ ๊ด€๋ฆฌํ•˜๋ฉฐ ํ•„์š”ํ•œ ๊ฐ์ฒด๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

 

4. Spring Framework ๊ตฌ์กฐ

  • ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์ด 6๊ฐœ์˜ ๋ชจ๋“ˆ๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค.

Spring Framework ๊ตฌ์กฐ

 

๋ชจ๋“ˆ ๋‚ด์šฉ
Core IoC, DI ๊ธฐ๋Šฅ ์ œ๊ณต
DAO JDBC ์ถ”์ƒ ๊ณ„์ธต ์ œ๊ณต
ORM JPA, Hibernate์™€ ๊ฐ™์€ ORM์ด๋‚˜ MyBatis ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค API์™€ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ ์ œ๊ณต
AOP ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ œ๊ณตํ•˜๋Š” AOP ํŒจํ‚ค์ง€ ์ œ๊ณต
Web ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌํ˜„์— ๋„์›€์ด ๋˜๋Š” ๊ธฐ๋Šฅ ์ œ๊ณต
JEE EJB, JMX ๋“ฑ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ J2EE ์ŠคํŽ™ ๊ด€๋ จ ๊ธฐ๋Šฅ ์ œ๊ณต

 

5. Spring Boot

  • ์Šคํ”„๋ง ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ•„์š”ํ•œ ์„ค์ •์„ ์‰ฝ๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•ด์ฃผ๋Š” ๋ณ„๋„์˜ ํ”„๋ ˆ์ž„์›Œํฌ
  • ์˜์กด์„ฑ ๊ด€๋ฆฌ์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์ • ์ง€์›
  • ์›น ์„œ๋ฒ„๊ฐ€ ํ•˜๋‚˜์˜ ํŒŒ์ผ์— ์ž„๋ฒ ๋“œ๋œ ์ƒํƒœ๋กœ ๋นŒ๋“œ๋˜์–ด ๋ฐฐํฌ๊ฐ€ ๊ฐ„ํŽธ

 

์Šคํ”„๋ง๊ณผ ์Šคํ”„๋ง๋ถ€ํŠธ(Spring Boot)ใ…ฃ์ •์˜, ํŠน์ง•, ์‚ฌ์šฉ ์ด์œ , ์ƒ์„ฑ ๋ฐฉ๋ฒ•

์Šคํ”„๋ง์€ Java ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์— ์žˆ์–ด ๋–ผ์–ด๋†“์„ ์ˆ˜ ์—†๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. Java ๋ฐฑ์—”๋“œ์˜ ํ•ต์‹ฌ ๊ธฐ์ˆ ์ด ๋˜๋Š” ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ์™€ ์Šคํ”„๋ง ๋ถ€ํŠธ๊ฐ€ ๋ฌด์—‡์ธ์ง€, ๋‚˜์•„๊ฐ€ ์Šคํ”„๋ง ๋ถ€ํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ

www.codestates.com

 

Spring(ํ”„๋ ˆ์ž„์›Œํฌ) - ๋‚˜๋ฌด์œ„ํ‚ค

์Šคํ”„๋ง ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•˜๊ณ  ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ๋œ ๋ชจ๋“ˆ์ด๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜์กด์„ฑ ๊ด€๋ฆฌ์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์„ค์ •์„ ํ•ด์ฃผ๋ฉฐ, ์›น์„œ๋ฒ„๊ฐ€ ํ•˜๋‚˜์˜ ํŒŒ์ผ์— ์ž„๋ฒ ๋“œ๋œ ์ƒํƒœ๋กœ ๋นŒ๋“œ๋˜๊ธฐ ๋•Œ๋ฌธ

namu.wiki

 

[Spring] Spring Framework๋ž€? ๊ธฐ๋ณธ ๊ฐœ๋… ํ•ต์‹ฌ ์ •๋ฆฌ

Spring Framework๋ž€? ์ž๋ฐ” ํ”Œ๋žซํผ์„ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ์„œ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์ข…ํ•ฉ์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ๊ฒฝ๋Ÿ‰ํ™”๋œ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. ์—”ํ„ฐํ”„

khj93.tistory.com

 

Spring๊ณผ Spring Boot์˜ ์ฐจ์ด์ ์„ ์•„์‹œ๋‚˜์š”? I ์ด๋žœ์„œ ๋ธ”๋กœ๊ทธ

Java์˜ ๋Œ€ํ‘œ์ ์ธ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์‚ฌ์šฉ๋˜๋Š” Spring๊ณผ Spring Boot์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค. I spring, spring boot, spring boot version, spring boot devtools, spring boot initializr, spring boot jsp

www.elancer.co.kr

728x90
๋ฐ˜์‘ํ˜•