Spring ๊ธฐ์ดˆ - 2

1 minute read

๐Ÿ’ป2022-03-14

Spring

๐Ÿ’ก ํŒจ์ŠคํŠธ ์บ ํผ์Šค ์Šคํ”„๋ง์˜ ์ •์„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘์„ฑ ์˜ˆ์ •

โ— ๊ฐœ์ธ์ด ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ์ ์€ ๊ฒƒ ์ด๊ธฐ์— ์˜ค๋ฅ˜๊ฐ€ ๋งŽ์„ ์ˆ˜๋„ ์žˆ์Œ

1๏ธโƒฃ ์‹คํ–‰ ๋ฉ”์ปค๋‹ˆ์ฆ˜

  • @RequestMapping(โ€œ/helloโ€) : localhost:8080/ch/hello ํ•˜๋ฉด main ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰์ด๋œ๋‹ค
  • main์— static์ด ์žˆ์–ด๋„ ๋˜๊ณ , ์—†์–ด๋„ ๋œ๋‹ค. ๊ทธ๋Ÿผ static์ด ์™œ์—†์–ด๋„ ์‹คํ–‰์ด ๋ ๊นŒ? โ†’ ์ธ์Šคํ„ด์Šค ๋ฉ”์„œ๋“œ์ด๊ธฐ์—, ๊ฐ์ฒด ์ƒ์ƒ ํ›„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค ํ•˜์ง€๋งŒ , ๋‹ค๋ฅธ ์„œ๋ฒ„์—์„œ ๊ฐ์ฒด์ƒ์„ฑ์„ ๋Œ€์‹  ํ•ด์ค€๋‹ค
  • ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜(iv) ์™€ ํด๋ž˜์Šค ๋ณ€์ˆ˜(cv) ๋‘˜๋‹ค ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ธ์Šคํ„ด์Šค ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋‚ซ๊ธฐ์— static ์„ ๋บ€ ์ธ์Šคํ„ด์Šค ๋ฉ”์„œ๋“œ์ธ public void main์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ

2๏ธโƒฃ request / response

  • request์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ๊ฐ’์„ ๋ฐ›๊ณ  response์—์„œ ์ž…๋ ฅํ•œ ๊ฐ’์„ ๋ณด์—ฌ์ค€๋‹ค
  • response์—์„œ text/html ํŒŒ์ผ์ด๋ผ๋Š”๊ฒƒ์„ ๋ช…์‹œํ•ด์ฃผ๊ณ , ํ•œ๊ธ€์ด ์•ˆ๊นจ์ง€๊ฒŒ utf-8๋กœ ํ•ด์ค€๋‹ค
  • PrintWriter out = response.getWriter(); ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๊ธฐ ๋•Œ๋ฌธ์— โ€œthrows IOExceptionโ€ ๋ฅผ ํ•ด์ค€๋‹ค
  • Controller / RequestMapping(์–ด๋…ธํ…Œ์ด์…˜)
  • out.println์€ ๋ธŒ๋ผ์šฐ์ €์— ์ถœ๋ ฅ ํ•ด์ฃผ๋Š”๊ฒƒ

3๏ธโƒฃ ์ด๋ฏธ์ง€ ํŒŒ์ผ ์œ„์น˜

  • src < main < webapp < resources < img(์ด๋ฆ„์„ img๋กœ ํ•˜๋Š” ํด๋” ๋„ฃ๊ธฐ)

4๏ธโƒฃ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐœ๋…

  • ํด๋ผ์ด์–ธํŠธ(client) : ์„œ๋น„์Šค๋ฅผ ์š”์ฒญํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
  • ์„œ๋ฒ„(server) : ์„œ๋น„์Šค(service)๋ฅผ ์ œ๊ณตํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
  • ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„(WAS) : ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„œ๋น„์Šคํ•˜๋Š” ์„œ๋ฒ„ โ†’ ์›๊ฒฉ์œผ๋กœ ์‚ฌ์šฉํ• ๋•Œ ๋„์™€์คŒ EX) ํ†ฐ์บฃ

5๏ธโƒฃ HTTP ์š”์ฒญ

1.png

  • ํ…์ŠคํŠธ์™€ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๊ตฌ๋ถ„ํ•ด์„œ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด WebKitFormBoundary๋กœ ๊ตฌ๋ถ„

6๏ธโƒฃ Reflection API

Reflection API

  • ํด๋ž˜์Šค์˜ ์ด๋ฆ„๋งŒ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด ์–ธ์ œ๋“ ์ง€ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ ๋’ค์ ธ, ํ•ด๋‹น ํด๋ž˜์Šค์˜ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค
  • ํด๋ž˜์Šค, ์ธํ„ฐํŽ˜์ด์Šค, ๋ฉ”์†Œ๋“œ, ๊ฐ์ฒด ์ƒ์„ฑ, ๋ณ€์ˆ˜ ๋ณ€๊ฒฝ, ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ ๊ฐ€๋Šฅ

Class.forName()

  • ํด๋ž˜์Šค์˜ ์ด๋ฆ„์„ ์•Œ๊ณ  ์žˆ์„๋•Œ, ํด๋ž˜์Šค ์ •๋ณด๋ฅผ ํ™•์ธ ํ•  ๋•Œ ์‚ฌ์šฉ

๐Ÿ“‘ ์ถœ์ฒ˜

Categories:

Updated:

Leave a comment