โป ์ด ๊ธ์ ์ฝ๋ํ๋ ์ ์ฒดํ๋จ ํ๋์ ํ๋ฉด์ ๋ง๋ค์ด์ก์ต๋๋ค.
โป Spring Boot ์น๊ฐ๋ฐ ์
๋ฌธ ๊ฐ์์
๋๋ค.
โป ์ฝ๋ํ๋ ์ ๋ฐ๋ก๊ฐ๊ธฐ
Spring Framework ์๊ฐ
Spring Framework ์ฅ์
- ๊ฒฝ๋ํ๋ Java Framework
- POJO์ ์ฌ์ฉ์ผ๋ก ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ฝ๋ ๊ฐ๋ฐ ๊ฐ๋ฅ
- DI์ AOP์ ์ ์ฉ
- Transaction ๊ด๋ฆฌ์ ํธ์์ฑ
- MVC ์ํคํ
์ฒ์ ์ง์
- ํ
์คํธ๊ฐ ์ฉ์ดํจ
- ๋์ ๋ณด์์ฑ
- ๋ฐฉ๋ํ ํ๋ก์ ํธ
- Spring Framework ์ 22๊ฐ ์นดํ
๊ณ ๋ฆฌ์ ์ ๋ฐฑ๊ฐ์ ํ๋ก์ ํธ๋ฅผ ๋ณด์
- ๋๊ท๋ชจ์ ์น ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ.์ด์์ ์ํ ๊ฑฐ์ ๋ชจ๋ ๊ธฐ์ ์ ์ ๊ณต
- ๋์์๋ ๊ฐ์
- ์ต๊ทผ SW ์์คํ
์ ์ ์ ๊ฑฐ๋ํด์ง๊ณ ๋ณต์กํด์ง๊ณ ์์
- ๋ ๋์ SW์์คํ
์ ์ํ ๋ค์ํ ๊ธฐ์ ๊ณผ ์ํคํ
์ฒ๊ฐ ์๊ฐ๋จ
(๋ง์ดํฌ๋ก์๋น์ค ์ํคํ
์ณ,NoSQL,ํด๋ผ์ฐ๋ ์ปดํจํ
๋ฐ ์ปจํ
์ด๋)
- Spring Framework๋ ๋ณํํ๋ ๊ธฐ์ ์ ๋น ๋ฅด๊ฒ ๋์ํ์ฌ ๊พธ์คํ ์ ํ๋ก์ ํธ๋ฅผ ์ถ์ํจ
Spring Framework ๋จ์
- ๋์ ๋ฌ๋ ์ปค๋ธ
- Bean,DI,AOP, ๊ฐ์ฒด์งํฅ ์ค๊ณ, ๋์์ธํจํด ๋ฑ ๋ค์ํ ๊ฐ๋
์ดํด ํ์
- Spring Framework์ ์ํฐํ๋ผ์ด์ฆ ๊ธ ๋๊ท๋ชจ ์๋น์ค ๊ฐ๋ฐ์ ์ํ ๋ชฉ์ ์ผ๋ก ๊ฐ๋ฐ
- SW์ ์ ์ฐํ ํ์ฅ์ฑ์ ์ํด ๋ค์ํ ๊ธฐ์ ๋ฑ๋ฆฌ ๋ดํฌ๋์ด์์
- ๋ณต์กํ ์ค์
- "Spring Framework์ XML ์ง์ฅ์ด๋ค."
- ๊ฐ๋จํ ์น์ดํ ๊ฐ๋ฐ์ ์ํด์๋ ์๋นํ ์์ค์ ์ค์ ์ด ํ์
- Spring Boot๊ฐ ์ถ์ํ๋ฉฐ ๋ฌธ์ ํด๊ฒฐ
Spring Boot๋?
- Spring Framework๋ฅผ ๋ณด๋ค ์์ฝ๊ฒ ํ์ฉํ ์ ์๊ฒ ์ง์ํ๋๊ธฐ์
- Spring Framework๋ฅผ ๊ธฐ๋ฐ์ผ๋กํจ
- ์ค์ , ์์กด์ฑ๊ด๋ฆฌ, ์ ํ๋ฆฌ์ผ์ด์
๋ชจ๋ํฐ๋ง, ์๋ฒ์ ์คํ ๋ฑ์ ๊ฐ๋ณ๊ณ ๋น ๋ฅด๊ฒ ์ํ ๊ฐ๋ฅ
Spring Boot์ ์ฃผ์ ๊ธฐ๋ฅ
- ์ค์ ๊ฐํธํ๋ฅผ ์ํAuto Configuration
- ์์กด์ฑ ๊ด๋ฆฌ๋ฅผ ์ํ Starter Project
- ๋ฐฐํฌ ํ๋ก์ธ์ค ๊ฐ์ํ๋ฅผ ์ํ Embedded WAS
- ์ ํ๋ฆฌ์ผ์ด์
์ ๋ชจ๋ํฐ๋ง์ ์ํ Actuator
์น ์๋น์ค ๊ฐ๋ฐ๊ณผ Web FrameWork์ ์ดํด
SW Framework
- SW ๊ฐ๋ฐ์ ํจ์จ์ ์ผ๋ก ํ๊ธฐ ์ํ ๋ฐ์ ํ
- ํน์ ๋ถ์ผ์ SW ๊ฐ๋ฐ์ ํ์ํ ๊ณตํต ๊ธฐ๋ฅ์ ์ ๊ณ
- ์ฌ์ฉ์๋ FrameWork์ ํ์ํ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ฌ ์ ์ฒด ์ดํ์ ์์ฑ
๋์ ์ฒซ Spring Boot ์ ํ๋ฆฌ์ผ์ด์
Spring Boot ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ๋ฐ ์คํ์์
- spring initializr๋ฅผ ํ์ฉํ Spring Boot ํ๋ก์ ํธ ์์ฑ ๋ฐ ๋ค์ด๋ก๋
- ๋ค์ด๋ก๋ํ Spring Boot ํ๋ก์ ํธ๋ฅผ IntelliJ์์ Import
- ์ถ๊ฐ ์ฝ๋ ๊ฐ๋ฐ
- Spring Boot ์ ํ๋ฆฌ์ผ์ด์
์คํ
- ์น ๋ธ๋ผ์ฐ์ ๋๋ Postman์ ํ์ฉํ์ฌ ํ
์คํธ
IP์ Port์ ์ดํด
Port ์ฃผ์
- IP ์ฃผ์๊ฐ ํน์ ํธ์คํธ (๊ธฐ๊ธฐ) ๊น์ง์ ์ฃผ์๋ผ๋ฉด, Port๋ ํธ์คํธ ๋ด๋ถ์ ํ๋ก์ธ์์ ๋คํธ์ํฌ ์ฃผ์
- Port ์ฃผ์๋ ํธ์คํธ์์ 0~65535๊น์ง ์ฌ์ฉ๊ฐ๋ฅ
- ํธ์คํธ ๋ด๋ถ์์ Port์ฃผ์๋ ์ ์ผํด์ผ ํจ
HTML
Hypertext Markup Language
- Hypertext
- ๋งํฌ๋ฅผ ํตํด ๋ชจ๋ ๋ฌธ์๊ฐ ์ฐ๊ฒฐ๋์ด ์๋๊ตฌ์กฐ
- ์ผ๋ฐ์ ์ธ ํ
์คํธ์ ์์ฐจ์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋ฐ์ด๋์ ๋น ์์ฐจ์ ์ ๊ทผ๋ฒ
- Markup -> ํ
์คํธ๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ํํํ๋ ๋ฐฉ์
- Hypertext -> ์๋ก ์ฐ๊ฒฐ ๋ ์ ์๊ณ
- Markup -> ์ ๋ณด๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ํํํ๋
- Language -> ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
- HTML์ ์ ๋ณด๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ํํํ๊ธฐ ์ํด Tag ๋ผ๋ ๊ฐ๋
์ ์ฌ์ฉ
HTML Tag
HTML ๊ธฐ์ด Tag
Heading
- ์ ๋ชฉ ๋๋ ๋ถ์ ๋ชฉ์ ํ์ํ ๋ ์ฌ์ฉ
- h1~h6 ์กด์ฌ, ์ซ์๊ฐ ์์์๋ก ํฐํธํฌ๊ธฐ๊ฐ ํผ
- ์๋์ ์ค๋ฐ๊ฟ ์ ์ฉ
Paragraph
- ๋ฌธ๋จ์ผ๋ก ํํํ ๋ ์ฌ์ฉ
- p,/p๋ก ์ฌ์ฉ
- ๋ฌธ๋จ์ ์ฒซ ์ค ์์ ์ค ๋ฐ๊ฟ์ด ์ ์ฉ๋จ
Line Break
- HTML์ ์ค ๋ฐ๊ฟ์ด ์ ์ฉ๋์ง ์์
- ๋ฌธ์ฅ ์ฌ์ด์ ์ค ๋ฐ๊ฟ์ ์ ์ฉํ๊ธฐ ์ํด์๋ Line Break ์ ์ฉ ํ์
- br ์ฌ์ฉ
Bold
- ํน์ ๋ฌธ์๋ฅผ ๊ฐ์กฐ
- 2์ข
๋ฅ์ Tag ์ฌ์ฉ ๊ฐ๋ฅ
- b,/b ๋จ์ bold ์ฒ๋ฆฌ
- strong,/strong ์ค์ํ textํ์ (์น ์ ๊ทผ์ฑ, ์์ฑ๊ฐ์กฐ๋ฑ)
Italic
- ํน์ ๋ฌธ์๋ฅผ ์ดํค๋ฆญ์ฒด๋ก ๋ณํ
- 2์ข
๋ฅ์ Tag ์ฌ์ฉ ๊ฐ๋ฅ
- i,/i ๋จ์ Italic ์ฒ๋ฆฌ
- em,/em ์ค์ํ textํ์ (์น ์ ๊ทผ์ฑ, ์์ฑ๊ฐ์กฐ๋ฑ)
Underline
- ํน์ ๋ฌธ์์ ์ธ๋๋ผ์ธ ํ์
- u,/u ์ฌ์ฉ
Image
- HTML ๋ฌธ์์ ์ด๋ฏธ์ง ์ฝ์
๊ฐ๋ฅ
- img,/img ์ฌ์ฉ
- attribute ์กด์ฌ
- src : ์ด๋ฏธ์ง์ ์ฃผ์ ์ ๋ณด
- alt : ์ด๋ฏธ์ง๋ฅผ ํ์ํ ์ ์์ ๋ ์ฌ์ฉ๋๋ ๋์ฒด ํ
์คํธ
Link
- Hypertext์ ๋ณธ์ง์ธ ๋ฌธ์ ๊ฐ ์ฐ๊ฒฐ์ ์์ฑ
- a,/a ์ฌ์ฉ
- href attribute : ๋งํฌ์ ์ฃผ์
Table
- Table : ํ๋์ ์ ์ฒด ํ๋ table,/table ํ๊ทธ๋ก ์ ์
- Table Row : ํ ๋ด๋ถ์ 1๊ฐ์ ํ์ tr,/tr ํ๊ทธ๋ก ์ ์
- Table Data : ํ ๋ด๋ถ์ 1๊ฐ์ ์
์ td,/tdํ๊ทธ๋ก ์ ์
List
CSS์ ๊ธฐ์ด ๊ฐ๋
HTMl์ ํ๊ณ
- ์น ์ด์ฐฝ๊ธฐ์๋ HTML์ ๋์์ธ์ ์ํ font ๊ฐ์ํ๊ทธ๊ฐ ์ถ๊ฐ๋๋ฉฐ ์ฝ๋์ ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ๊ณ ์ ๋ณด๋ก์์ ์น์ ๊ฐ์น๊ฐ ๋จ์ด์ง
- ์์ ์ฉ์ด์ฑ, ๊ฐ๋
์ฑ, ์ฝ๋ ์ค๋ณต์ผ๋ก ์ธํ ์ฝ๋์ด ๋น์ฉ ํจ์จ์ฑ์ด ๋จ์ด์ง
CSS์ ๋ฑ์ฅ
- HTML ํ๊ธฐ์ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํ ๊ธฐ์
- HTML ์ ์ ๋ณด๋ฅผ ํํํ๋๋ฐ ์ง์คํ๊ณ
- CSS๋ HTML ๋ฌธ์๋ฅผ ์๊ฐ์ ์ผ๋ก ๊พธ๋ฏธ๋ ๊ธฐ๋ฅ์ ์ง์คํ๋ ๊ธฐ์
- ์ ๋ณด์ ๋์์ธ์ ๋ถ๋ฆฌํ ์ ์๋ค.
- ์ ๋ณด๋ฅผ ์์ ํ์ง ์๊ณ ๋์์ธ๋ง ๋ณ๊ฒฝํ ์ ์๋ค.
- CSS(Cascading Style Sheets)
๊ณ์ธตํ ์ํคํ
์ฒ์ ์ดํด
SW ์ํคํ
์ฒ
- ๊ฑด์ถ์ ํ ๋ ์ค๊ณ๋๋ฅผ ๊ทธ๋ฆฌ์ ๊ฑด๋ฌผ์ด ์ด๋ป๊ฒ ์ง์ด์ง์ง ๊ตฌ์
- SW๋ ์ค์ ์ฝ๋ ๊ฐ๋ฐ์ ์ ์ต์ข
SW๊ฐ ๋์ด์ผ ํ ๋ชจ์ต์ ์ค๊ฒํจ
- SW์ํคํ
์ณ๋, SW์ ๊ตฌ์กฐ๋ฅผ ์ ์ํ ๊ฒ์ผ๋ก SW๋ฅผ ๊ตฌ์ฑํ๋ ์ฃผ์ ์์๋ค๊ณผ ์์๋ค์ ๊ด๊ณ๋ฅผ ์ ์ํ๊ฒ
๊ณ์ธตํ ์ํคํ
์ฒ ํจํด
- SW๋ฅผ ์๋ก ๋ค๋ฅธ ์ญํ ์ ํ๋ 3,4๊ฐ์ ๊ณ์ธต์ ๊ตฌ๋ถ
- Presentation Layer
- Application Layer
- Business Layer
- Data Access Layer
- ๊ณ์ธต๊ฐ์ ํธ์ถ์ ํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ ํ๋ ฅํ๋ฉฐ ์ ์ฒด ์น์๋น์ค ๊ตฌ์ฑ
Spring Controller์ ์ดํด
Spring Controller
- ๊ณ์ธตํ ์ํคํ
์ฒ์ Presentation Layer์ ํด๋น
- Client(์น ๋ธ๋ผ์ฐ์ , ๋ชจ๋ฐ์ผ ์ฑ) ์ ์์ฒญ์ ๋ฐ๊ณ
- Application Layer์ ์์ฒญ์ ๋ํ ์ฒ๋ฆฌ ์์
- Client์ ์ต์ข
์๋ต์ ํ๋ ์ญํ
- view : Client๊ฐ ์์ฒญ์ ๋ํ ๋ต์ ๊ฒฐ๊ณผ๋ก ๋ณด๊ฒ ๋๋ ์นํ์ด์ง
- data : Client๊ฐ ์์ฒญ์ ๋ํ ์๋ต์ผ๋ก ๋ฐ๋ ๋ฐ์ดํฐ
Controller ์ฝ๋
- Spring Controller๋ฅผ ๊ตฌํํ๊ธฐ ์ํด์๋ 3๊ฐ์ ๊ธฐ๋ณธ Annotation์ด ์ฌ์ฉ
- @Controller,@RestController
- Controller ์ญํ ์ ํ๋ ํด๋์ค๋ฅผ ์ง์ , ํด๋์ค ์๋จ์ ๋ช
์
- @RequestMapping
- ํน์ Request๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฉ์๋๋ฅผ ์ง์ , ํด๋์ค ๋๋ ๋ฉ์๋ ์๋จ์ ๋ช
์
@Controller VS @RestController
- ์๋ตํํ ๋ค๋ฆ
- Controller : view ์๋ต(html ํ์ผ๋ฑ)
- RestController : data ์๋ต
RequestMapping๊ณผ URI
RequestMapping๊ณผ URI
- RequestMapping Annotation์ URI Path ์ ๋ณด๋ฅผ ๋ช
์
- @RequestMapping(value = "/user")