MapleStory Cookie With Halo

โ˜• JAVA/โ˜• Library & Pattern

[JAVA]HttpServlet ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ ๋„์ž…ํ•ด๋ณด๊ธฐ

๋‰ด์ด NUEY 2025. 2. 28. 22:53
๋ฐ˜์‘ํ˜•

 

๐Ÿ’ก FrontController
ํ™”๋ฉด์—์„œ ๋ญ”๊ฐ€๋ฅผ ํด๋ฆญํ•ด ํ˜ธ์ถœ ํ–ˆ์„ ๋•Œ, ๊ฐ๊ฐ์˜ ์—ฌ๋Ÿฌ ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์ด๋™ํ•˜์ง€ ์•Š๊ณ , ํ•˜๋‚˜์˜ ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์ด๋™ํ•ด ๊ฐ ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์ด๋™ํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. ์ˆ˜๋ฌธ๊ด€๐Ÿ‘จโ€๐ŸŽค๊ณผ ๊ฐ™์€ ์—ญํ• 
 ๊ณตํ†ต ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ณ , ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์„œ๋ธ”๋ฆฟ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

์ด ๊ธ€์—์„œ๋Š” ๋‚˜์˜ค์ง€ ์•Š์ง€๋งŒ, ์Šคํ”„๋งMVC์˜ ํ•ต์‹ฌ๋„ FrontController์ด๋ฉฐ, Dispatcherservlet์œผ๋กœ ๋˜์–ด ์žˆ๋‹ค.

 


 

๊ธฐ์กด ์ฝ”๋“œ์—์„œ ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋„์ž…ํ•ด๋ณด๊ฒ ๋‹ค.

2025.02.28 - [โ˜• JAVA/โ˜• Library & Pattern] - [JAVA]HttpServlet, JSP, JSTL์„ ์ด์šฉํ•œ MVC pattern

 

 


 

  1. ํŒจํ‚ค์ง€์™€ ํด๋ž˜์Šค ์œ„์น˜
  2. interface ์ปจํŠธ๋กค๋Ÿฌ
  3. ๋ฅผ ์ƒ์†๋ฐ›๋Š” ์ปจํŠธ๋กค๋Ÿฌ๋“ค์„ ๋งŒ๋“ค์–ด์ค€๋‹ค.
    ์ด ๋•Œ, ์•ˆ์˜ ์ฝ”๋“œ๋Š” ๋ฉ”์„œ๋“œ๋ช…๋งŒ ๋‹ค๋ฅด๊ณ  ์•ˆ์˜ ์ฝ”๋“œ๋Š” ๊ธฐ์กด ์ฝ”๋“œ์™€ ๊ฐ™๋‹ค.
  4. ๋™์ผํ•˜๊ฒŒ ๋‚˜๋จธ์ง€ save, memberList ์ปจํŠธ๋กค๋Ÿฌ๋„ ๋งŒ๋“ค์–ด์ค€๋‹ค.

  5. FrontController

    1.  urlPatterns = "/front-controller/v1/*"  ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ชจ๋“  ํŽ˜์ด์ง€๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.
    2. controllerMap์ด๋ผ๋Š” ์ปจํŠธ๋กค๋Ÿฌ ๋งคํ•‘ ์ •๋ณด๋ฅผ ๋งŒ๋“ค์–ด์„œ

    3.  request.getRequestURI( )  ๋กœ uri๋ฅผ ๊ฐ€์ ธ์˜ค๋ฉด "/front-controller/v1/members"๊ฐ€ ๊ฐ€์ ธ์™€์ง„๋‹ค.
      โ†’ key๊ฐ’์œผ๋กœ ํ™œ์šฉํ•ด ์ผ์น˜ํ•˜๋Š” ํ•˜์œ„ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค.
    4. controller.process(request, response)
      โ†’ ์ผ์น˜ํ•˜๋Š” ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์‹คํ–‰์‹œํ‚จ๋‹ค.

 

โ€ป ๊ตฌ์กฐ๋ฅผ ๊ฐœ์„ ํ•  ๋•Œ๋Š” ์ด์™€ ๊ฐ™์ด, ๊ธฐ์กด ์ฝ”๋“œ๋ฅผ ์ตœ๋Œ€ํ•œ ์œ ์ง€ ์‹œํ‚ค๊ณ  ํ‹€์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

 

 


๋А๋‚€ ์ . ๋ฌผ๋ก  ์š”์ฆ˜ ์ด๋ ‡๊ฒŒ ์“ฐ์ง€๋Š” ์•Š๊ฒ ์ง€๋งŒ ์ฐธ ๊น”๋”ํ•˜๊ณ  ์ข‹์€ ๊ตฌ์กฐ์ด๋‹ค.

 

โ€ป ์ฐธ์กฐ : https://www.inflearn.com/roadmaps/373

๋ฐ˜์‘ํ˜•