Spring REST, RESTful API, XML, JSON , Jackson ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜

2021. 11. 29. 15:29ใ†Spring

728x90

 

1. Open API(Application Programming Interface)

: Open API๋ž€ ๊ฐœ๋ฐฉํ˜• api๋กœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐฉ๋˜์–ด ์žˆ๋Š” ์ƒํƒœ์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์˜๋ฏธํ•œ๋‹ค. 

๋Œ€๋ถ€๋ถ„ Open api๋Š” REST ๋ฐฉ์‹์œผ๋กœ ์ง€์›ํ•œ๋‹ค.

 

 

2. REST(REpresentational Safe Transfer)

: HTTP URI + HTTP Method ๋กœ HTTP URI๋ฅผ ํ†ตํ•ด ์ œ์–ดํ•  ์ž์› (Resource)์„ ๋ช…์‹œํ•˜๊ณ , 

HTTP Method( GET, POST, PUT, DELETE) ๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ์ž์›(ReSource)๋ฅผ ์ œ์–ดํ•˜๋Š” ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ๋ฐฉ์‹์˜ ์•„ํ‚คํ…์ฒ˜์ด๋‹ค. 

 

POST -> Create(Insert)

GET -> Read(Select)

PUT -> Update or Create 

DELETE -> Delete 

 

 

3. RESTful API

: RESTful API๋Š” HTTP์™€ URI ๊ธฐ๋ฐ˜์œผ๋กœ ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œ๊ณตํ•˜๋Š” ์• ํ”Œ๋ ˆ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. 

 

 

 

 

4. JSON(JavaScript Object Notation)

: JSON์€ XML ๋ฐฉ์‹์— ๋น„ํ•˜๋ฉด ๊ฒฝ๋Ÿ‰์˜ DATA- ๊ตํ™˜ํ˜•์‹์ด๋‹ค. 

JSON์€ JavaScript ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ‘œํ˜„์‹์œผ๋กœ ์ตœ๊ทผ์—๋Š” XML์„ ๋Œ€์ฒดํ•ด ๋ฐ์ดํ„ฐ ์ „์†ก๋“ฑ์— ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค. 

 

1๏ธโƒฃ JSON์€ name-value ํ˜•์‹์˜ ์Œ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๋‹ค. 

 

2๏ธโƒฃ ๊ฐ’๋“ค์˜ ์ˆœ์„œํ™”๋œ ๋ฆฌ์ŠคํŠธ ํ˜•์‹

 

 

 

5. Jackson 

Jackson์€ JSON ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ JSONํ˜•ํƒœ๋ฅผ JAVA๊ฐ์ฒด๋กœ, ๋˜๋Š” JAVA ๊ฐ์ฒด๋ฅผ JSON ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜ํ•ด ์ฃผ๋Š” JAVA์šฉ JSON ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. 

https://mvnrepository.com/artifact/org.codehaus.jackson/jackson-mapper-asl

 

 

 

6. XML(eXtensible Markup Language)

: XML์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ „๋‹ฌ(๊พœํ™˜)ํ•˜๊ธฐ ์œ„ํ•œ ์–ธ์–ด๋กœ XML์€ ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ์™€ ์˜๋ฏธ๋ฅผ ์„ค๋ช…ํ•œ๋‹ค. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90