๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Spring

Spring ๋ฉด์ ‘ ๋Œ€๋น„ ์ •๋ฆฌ

Spring

JAVA ํ”Œ๋žซํผ์„ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ

 

- POJO (Plain Old Java Object) ๋ฐฉ์‹

   - ํŠน์ • '๊ธฐ์ˆ '์— ์ข…์†๋˜์–ด ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ˆœ์ˆ˜ํ•œ ์ž๋ฐ” ๊ฐ์ฒด

   - ๊ธฐ์ˆ ๊ณผ ํ™˜๊ฒฝ์— ์ข…์†๋˜์–ด ์˜์กดํ•˜๊ฒŒ ๋œ ์ž๋ฐ” ์ฝ”๋“œ๋Š” ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ ธ ์œ ์ง€๋ณด์ˆ˜์— ์–ด๋ ค์›€์ด ์ƒ๊ธด๋‹ค.

 

- IoC  ์ง€์›

   - ์ปจํŠธ๋กค์˜ ์ œ์–ด๊ถŒ์ด ์‚ฌ์šฉ์ž๊ฐ€ ์•„๋‹ˆ๋ผ ํ”„๋ ˆ์ž„์›Œํฌ์— ์žˆ๋‹ค.

   - ๊ฐ์ฒด์˜ ์ƒ์„ฑ๋ถ€ํ„ฐ ์ƒ๋ช…์ฃผ๊ธฐ ๊ด€๋ฆฌ๋ฅผ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ํ•œ๋‹ค.

   - @Autowired

 

- DI ์ง€์›

   - ๊ฐ์ฒด๋ฅผ ์ง์ ‘ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ  ์™ธ๋ถ€์—์„œ ์ƒ์„ฑ ํ›„ ์ฃผ์ž…ํ•œ๋‹ค.

   - ๋ชจ๋“ˆ๊ฐ„์˜ ๊ฒฐํ•ฉ๋„๊ฐ€ ๋‚ฎ์•„์ง€๊ณ  ์œ ์—ฐ์„ฑ์ด ๋†’์•„์ง„๋‹ค.

   - ๊ณ„์ธต์ด๋‚˜ ์„œ๋น„์Šค๋“ค๊ฐ„์˜ ์˜์กด์„ฑ์ด ์กด์žฌํ•  ๊ฒฝ์šฐ ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ์„œ๋กœ ์—ฐ๊ฒฐ์‹œ์ผœ์ค€๋‹ค.

 

- AOP ์ง€์›

   - ๋กœ์ง์„ ๊ธฐ์ค€์œผ๋กœ ํ•ต์‹ฌ ๊ด€์ , ๋ถ€๊ฐ€ ๊ด€์ ์œผ๋กœ ๋‚˜๋ˆ„๊ณ  ๊ทธ ๊ด€์ ์„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ๊ฐ ๋ชจ๋“ˆํ™”ํ•œ๋‹ค.

   - ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์˜ ๊ฒฝ์šฐ ๋ถ„๋ฆฌํ•ด์„œ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

   - @Aspect , @Component

- ์—ฌ๋Ÿฌ ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต

   - ex) Hibernate , iBatis

 

 

์žฅ์ 

   - ๋ณต์žกํ•œ ์ฝ”๋“œ ๊ฐ์†Œ

   - ๋†’์€ ํ™•์žฅ์„ฑ

   - ์œ ์—ฐํ•œ ์•„ํ‚คํ…์ฒ˜

   - ๋‹จ์œ„ ํ…Œ์ŠคํŒ…์˜ ๋‹จ์ˆœํ™”

 

 

Spring Boot

์Šคํ”„๋ง ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ๋•Œ์— ํ•„์š”ํ•œ ์ดˆ๊ธฐ ์„ค์ •์„ ๊ฐ„ํŽธํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ

 

 

- ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ด€๋ฆฌ ์ž๋™ํ™”

- ์„ค์ • ์ž๋™ํ™”

- ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „ ์ž๋™ ๊ด€๋ฆฌ

- ๋‚ด์žฅ Tomcat

- JAR

 

 

Spring Container

์Šคํ”„๋ง์—์„œ ์‚ฌ์šฉํ•  ๊ฐ์ฒด๋“ค์„ ๋‹ด๊ณ ์žˆ๋Š” ๊ฒƒ

=ApplicationContext

 

- ์Šคํ”„๋ง ๋นˆ์„ ์ƒ์„ฑํ•œ๋‹ค

- ์˜์กด๊ด€๊ณ„๋ฅผ ์ฃผ์ž…ํ•œ๋‹ค.

- ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.

- ๋ฉ”์„œ๋“œ์— @Bean์„ ํ†ตํ•ด ๋นˆ์œผ๋กœ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋‹ค.

- ๋“ฑ๋ก๋œ  ๋นˆ์„ ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•œ๋‹ค.

 

 

Spring Bean

์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ์ž๋ฐ” ๊ฐ์ฒด(POJO)

๋“ฑ๋ก ๋ฐฉ๋ฒ•

 - @Component  ์ปดํฌ๋„ŒํŠธ ์Šค์บ”

 - Java ์ฝ”๋“œ๋กœ ๋“ฑ๋ก

   (ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ณ , @Configuration ์–ด๋…ธํ…Œ์ด์…˜์„ ํ™œ์šฉ)

 

@Bean

 - ๊ฐœ๋ฐœ์ž๊ฐ€ ์ปจํŠธ๋กค์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค์„ Bean์œผ๋กœ ๋“ฑ๋กํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ์— ์‚ฌ์šฉ๋œ๋‹ค.

 - ๋ฉ”์†Œ๋“œ ๋˜๋Š” ์–ด๋…ธํ…Œ์ด์…˜ ๋‹จ์œ„์— ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค. 

@Component

 - ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ปจํŠธ๋กค์ด ๊ฐ€๋Šฅํ•œ ํด๋ž˜์Šค๋“ค์˜ ๊ฒฝ์šฐ์— ์‚ฌ์šฉ๋œ๋‹ค.

 - ํด๋ž˜์Šค ๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค ๋‹จ์œ„์— ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค.

 

Bean์˜ ๋ผ์ดํ”„ ์‚ฌ์ดํด

์Šคํ”„๋ง IoC ์ปจํ…Œ์ด๋„ˆ ์ƒ์„ฑ → ์Šคํ”„๋ง ๋นˆ ์ƒ์„ฑ → ์˜์กด๊ด€๊ณ„ ์ฃผ์ž… → ์ดˆ๊ธฐํ™” ์ฝœ๋ฐฑ ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ
→ ์‚ฌ์šฉ → ์†Œ๋ฉธ ์ „ ์ฝœ๋ฐฑ ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ → ์Šคํ”„๋ง ์ข…๋ฃŒ 

 

Servlet

ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ž๋ฐ” ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ˆ 

 

- MVC์—์„œ Controller๋กœ ์ด์šฉ๋œ๋‹ค.

 

Servlet Container

   - ex) Tomcat

   - ์›น์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•ด ์›น์†Œ์ผ“์„ ํŠน์ • ํฌํŠธ์— ์ƒ์„ฑํ•˜๋Š” ๋ณต์žกํ•œ ์ผ์„ ์•ˆ ํ•ด๋„ ๋˜๊ฒŒ ํ•œ๋‹ค.

Dispatcher Servlet 

   - ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ†ตํ•ด ๋ฐ›๋Š” ๋ชจ๋“  ์š”์ฒญ์„ ์ œ์ผ ์•ž์—์„œ ๋ฐ›๋Š” Controller

   - ๊ณตํ†ต ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•œ ํ›„ , ์„ธ๋ถ€ ์ปจํŠธ๋กค๋Ÿฌ๋กœ ๋„˜๊ธด๋‹ค.

   - ์„ธ๋ถ€ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ฒ˜๋ฆฌํ•  ๋ถ€๋ถ„์„ ์ฒ˜๋ฆฌํ•˜๊ณ  view๋ฅผ Dispatcher Servlet์— ๋„˜๊ธด๋‹ค.

 

Servlet vs JSP

 

Spring MVC

์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ MVC ๊ธฐ๋ฐ˜์˜ ์›น ํ”„๋ ˆ์ž„์›Œํฌ

Model, View, Controller๋กœ ๋ถ„๋ฆฌ

 

๊ตฌ์„ฑ

- Dispatcher Servlet

- Handler Mapping

- Controller

- ViewResolver

- View

 

 

์žฅ์ 

   - DI๋ฅผ ํ†ตํ•ด ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ์–ด ๋‹จ์œ„ ํ…Œ์ŠคํŠธ์— ์šฉ์ดํ•˜๋‹ค.

   - IoC๋ฅผ ํ†ตํ•ด Bean์˜ ๋ผ์ดํ”„์‚ฌ์ดํด์— ๊ด€์—ฌํ•˜์ง€ ์•Š๊ณ  ๊ฐœ๋ฐœํ•œ๋‹ค.

 

๋‹จ์ 

   - XML ๊ธฐ๋ฐ˜์€ ๋งŽ์€ ์‹œ๊ฐ„์ด ๋“ ๋‹ค.

   - WAS๋ฅผ ๋ณ„๋„๋กœ ์„ค์น˜ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.

 

DAO / DTO

DAO : DB์— ์ ‘๊ทผํ•˜์—ฌ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ํด๋ž˜์Šค ex) Repository , Mapper

DTO : ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ํด๋ž˜์Šค

VO : ์‹ค์ œ ๋ฐ์ดํ„ฐ๋งŒ์„ ์ €์žฅํ•˜๋Š” ํด๋ž˜์Šค

DTO vs VO

 

Singleton Pattern

1๊ฐœ์˜ ํด๋ž˜์Šค๋‹น 1๊ฐœ์˜ ๊ฐ์ฒด๋งŒ์„ ์ƒ์„ฑํ•จ์— ๋ณด์žฅํ•˜๋Š” ํŒจํ„ด

Spring์—์„œ๋Š” Bean์„ ์‹ฑ๊ธ€ํ†คํŒจํ„ด์œผ๋กœ ๊ตฌํ˜„

 

ํŠน์ง•

   - ๊ฐ์ฒด๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋น„์šฉ์ด ์ ๋‹ค.

   - ํ•œ๋ฒˆ ๋งŒ๋“ค์–ด์„œ ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ์‚ฌ์šฉ๋˜๋ฉด ์ˆ˜์ •์ด ํž˜๋“ค๋‹ค.

   - test๊ฐ€ ์–ด๋ ต๋‹ค.

 

 

SQL Mapper   vs   ORM

๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ JDBC Programming์„ ํ•˜์ง€ ์•Š๋„๋ก ๊ธฐ๋Šฅ๋“ค์„ ์ œ๊ณตํ•ด์ฃผ๋Š” Persistence Framework ์ข…๋ฅ˜

 

 

SQL Mapper

- Object์™€ SQL์˜ ํ•„๋“œ๋ฅผ ๋งคํ•‘ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ์ฒดํ™”ํ•˜๋Š” ๊ธฐ์ˆ 

- SQL ์˜์กด์ ์ธ ๋ฐฉ๋ฒ•

- ex) Mybatis

 

 

ORM

- ๊ฐ์ฒด(๊ฐ์ฒด์ง€ํ–ฅ)์™€ RDBMS์˜ ๋ฐ์ดํ„ฐ(๊ด€๊ณ„์ง€ํ–ฅ)๋ฅผ ๋งคํ•‘ํ•œ๋‹ค

- DBMS์— ์ข…์†์ ์ด์ง€ ์•Š๋‹ค.

- ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฐ˜๋ณต์ ์ธ SQL์„ ์ง์ ‘ ์ž‘์„ฑํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค.

- Java ORM ์ธํ„ฐํŽ˜์ด์Šค ํ‘œ์ค€ : JPA

- ex) Hibernate, EclipseLink

 

 

 

Spring Security

Spring ๊ธฐ๋ฐ˜์˜ ์•ฑ ๋ณด์•ˆ์„ ๋‹ด๋‹นํ•˜๋Š” ํ•˜์œ„ ํ”„๋ ˆ์ž„์›Œํฌ

 

ํŠน์ง•

-  '์ธ์ฆ'๊ณผ '๊ถŒํ•œ'์— ๋Œ€ํ•œ ๋ถ€๋ถ„์„ Filter ํ๋ฆ„์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌํ•œ๋‹ค.

๊ฐœ๋ฐœ์ž ์ž…์žฅ์—์„œ๋Š” ์ผ์ผ์ด ๋ณด์•ˆ๊ด€๋ จ ๋กœ์ง์„ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

 

 

์ธ์ฆ๊ณผ ์ธ๊ฐ€

- ์ธ์ฆ(Authentication): ํ•ด๋‹น ์‚ฌ์šฉ์ž๊ฐ€ ๋ณธ์ธ์ด ๋งž๋Š”์ง€๋ฅผ ํ™•์ธํ•˜๋Š” ์ ˆ์ฐจ

- ์ธ๊ฐ€(Authorization): ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์š”์ฒญํ•œ ์ž์›์— ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ์ ˆ์ฐจ 

 

 

Spring WebFlux

ํด๋ผ์ด์–ธํŠธ, ์„œ๋ฒ„์—์„œ reactive ์Šคํƒ€์ผ์˜ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ๋„์™€์ฃผ๋Š” Spring 5์—์„œ ์ƒˆ๋กญ๊ฒŒ ์ถ”๊ฐ€๋œ ๋ชจ๋“ˆ

 

Spring MVC์˜ ํ•œ๊ณ„์ ์„ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅ

- ๊ธฐ์กด์˜ Spring MVC์—์„œ๋Š” HTTP ์š”์ฒญ๋“ค์„ ํ์— ๋„ฃ์–ด๋‘๊ณ , ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘
- ์‘๋‹ต์„ฑ์ด ์ƒ๋Œ€์ ์œผ๋กœ ๋–จ์–ด์ง
- ๋น„๋™๊ธฐ์ ์œผ๋กœ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ• ํ•„์š”

 

-  Java 8 lambda ๋˜๋Š” Kotlin๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€๋ณ๊ณ  ๊ธฐ๋Šฅ์ ์ธ ์›น ํ”„๋ ˆ์ž„ ์›Œํฌ์— ์œ ์šฉ

-  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด JPA, JDBC ๋˜๋Š” ๋„คํŠธ์›Œํ‚น API์— ์˜์กดํ•˜๋Š” ๊ฒฝ์šฐ Spring MVC๊ฐ€ ์ตœ์„ ์˜ ์„ ํƒ

https://velog.io/@shinmj1207/Spring-Webflux-1-

 

๋‹จ์œ„ ํ…Œ์ŠคํŠธ

๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐœ๋ฐœํ•œ ๋ชจ๋“ˆ๋“ค์ด ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•˜๊ณ  ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š”์ง€ ํ™•์ธํ•˜๋Š” ํ…Œ์ŠคํŠธ

Spring์—๋Š” ๋Œ€ํ‘œ์ ์œผ๋กœ Junit์ด ์žˆ๋‹ค.

 

ํŠน์ง•

- ์ž‘์„ฑ๋œ ์ฝ”๋“œ๋ฅผ ์ž‘์€ ๋‹จ์œ„๋“ค๋กœ ๋‚˜๋ˆˆ ๋’ค ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ•œ ๋‹จ์œ„๋“ค๋งŒ ๋ฌถ์–ด ํ•œ ๋ฒˆ์— ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅ

- ๋ฌถ์—ฌ์ง„ ๋‹จ์œ„๋“ค์ด ๋ฌธ์ œ๊ฐ€ ์—†์„ ์‹œ ๋” ํฐ ๋‹จ์œ„๋กœ ๋ฌถ์œผ๋ฉฐ ํ…Œ์ŠคํŠธํ•˜๋Š” ์ƒํ–ฅ์‹ ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅ

- ์ž‘์„ฑํ•ด๋‘” ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ๋ฆฌํŒฉํ† ๋ง ๋œ ์ฝ”๋“œ์˜ ์‹ ๋ขฐ๋„๋ฅผ ๋†’์ž„

- ๊ฐœ๋ฐœ ์ฝ”๋“œ์™€ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๊ฐ€ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์–ด ์ฝ”๋“œ ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ด

- ํŠธ๋žœ์žญ์…˜์ฒ˜๋ฆฌ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ๋„ ๋กค๋ฐฑ๋˜์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ˜์˜๋˜์ง€ ์•Š๋„๋ก ์„ค์ • ๊ฐ€๋Šฅ

 

 

 


Spring ๊ธฐ์ˆ ๋ฉด์ ‘ ์˜ˆ์ƒ ์งˆ๋ฌธ

๐Ÿ’ก Spring Framework์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก Spring Boot์™€ Spring Framework์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก Spring MVC์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก MVC๋Š” ์–ด๋– ํ•œ ํ๋ฆ„์œผ๋กœ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก ์ œ์–ด์˜ ์—ญ์ „(IoC)์— ๋Œ€ํ•ด ์•„๋Š”๋Œ€๋กœ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก ์˜์กด์„ฑ ์ฃผ์ž…(DI, Dependency Injection)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก ์Šคํ”„๋ง์—์„œ ๋นˆ(Bean)์„ ๋“ฑ๋กํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋งํ•ด๋ณด์„ธ์š”.

๐Ÿ’ก ์Šคํ”„๋ง ๋นˆ์˜ ๋ผ์ดํ”„์‚ฌ์ดํด์€ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌ๋˜๋Š”์ง€ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก Spring์˜ ์‹ฑ๊ธ€ํ†ค ํŒจํ„ด์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก VO์™€ BO, DAO, DTO์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๐Ÿ’ก ์„œ๋ธ”๋ฆฟ(Servlet)์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

 

 

 

์‹ ์ž… ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ๋ฉด์ ‘ ์งˆ๋ฌธ ์ •๋ฆฌ - ๋ฐฑ์—”๋“œ

๐Ÿ’ก WAS(Web Application Server)์™€ WS(Web Servโ€‹er)์˜ ์ฐจ์ด๋ฅผ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. WAS(Web Application Server) ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๋„ฃ์„ ์ˆ˜ ์žˆ์Œ Tomcat, PHP, ASP, .NET ๋“ฑ WS(Web Server) ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๋„ฃ์„ ์ˆ˜ ์—†์Œ Nginx, Apache ๋“ฑ

dev-coco.tistory.com

'Spring' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Spring Webflux  (0) 2023.05.06
Spring WebClient  (0) 2023.04.30