[์Šคํ”„๋ง MVC] - 11. @Controller / @RequestMapping

2023. 2. 15. 18:17ยทSpring/Spring MVC

 

์Šคํ”„๋ง MVC ๊ตฌ์กฐ

 

@RequestMapping

 

 ์• ๋…ธํ…Œ์ด์…˜์„ ํ™œ์šฉํ•œ ๋งค์šฐ ์œ ์—ฐํ•˜๊ณ , ์‹ค์šฉ์ ์ธ ์ปจํŠธ๋กค๋Ÿฌ

 

@RequestMapping ์• ๋…ธํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ์ปจํŠธ๋กค๋Ÿฌ์ด๋‹ค.

 

 

๊ฐ€์žฅ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ํ•ธ๋“ค๋Ÿฌ ๋งคํ•‘๊ณผ ํ•ธ๋“ค๋Ÿฌ ์–ด๋Œ‘ํ„ฐ

 

@RequestMapping

  • RequestMappingHandlerMapping
  • RequestMappingHandlerAdapter

 

 

@Controller
public class SpringMemberFormControllerV1 {

    @RequestMapping("/springmvc/v1/members/new-form")
    public ModelAndView process() {
        return new ModelAndView("new-form");
    }
}

 

@Controller


์Šคํ”„๋ง์ด ์ž๋™์œผ๋กœ ์Šคํ”„๋ง ๋นˆ์œผ๋กœ ๋“ฑ๋กํ•œ๋‹ค. (๋‚ด๋ถ€์— @Component ์• ๋…ธํ…Œ์ด์…˜์ด ์žˆ์–ด์„œ ์ปดํฌ๋„ŒํŠธ ์Šค์บ”์˜ ๋Œ€์ƒ์ด ๋จ)


์Šคํ”„๋ง MVC์—์„œ ์• ๋…ธํ…Œ์ด์…˜ ๊ธฐ๋ฐ˜ ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์ธ์‹ํ•œ๋‹ค.

 

 

 

@RequestMapping

 

์š”์ฒญ ์ •๋ณด๋ฅผ ๋งคํ•‘ํ•œ๋‹ค. ํ•ด๋‹น URL์ด ํ˜ธ์ถœ๋˜๋ฉด ์ด ๋ฉ”์„œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋œ๋‹ค.

 

 

 

 

mv.addObject("member",member);

 

์Šคํ”„๋ง์ด ์ œ๊ณตํ•˜๋Š” ModelAndView ๋ฅผ ํ†ตํ•ด Model ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ๋Š” addObject() ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

 

 

@Controller
@RequestMapping("/springmvc/v2/members")
public class SpringMemberControllerV2 {

 

ํด๋ž˜์Šค ๋ ˆ๋ฒจ์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด @RequestMapping ์„ ๋‘๋ฉด ๋ฉ”์„œ๋“œ ๋ ˆ๋ฒจ๊ณผ ์กฐํ•ฉ์ด ๋œ๋‹ค.

 

@RequestMapping("/new-form")

-->  /springmvc/v2/members/new-form 

 

 

 

์Šคํ”„๋ง MVC - ์‹ค์šฉ์ ์ธ ๋ฐฉ์‹

 

public String save(@RequestParam("username") String username,
                         @RequestParam("age") int age,
                         Model model) {

 

์Šคํ”„๋ง์€ HTTP ์š”์ฒญ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ @RequestParam ์œผ๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

 

@RequestParam("username") ์€ request.getParameter("username") ์™€ ๊ฑฐ์˜ ๊ฐ™์€ ์ฝ”๋“œ๋ผ ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.


๋ฌผ๋ก  GET ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ, POST Form ๋ฐฉ์‹์„ ๋ชจ๋‘ ์ง€์›ํ•œ๋‹ค.

 

 

model.addAttribute("member",member);

 

Model ํŒŒ๋ผ๋ฏธํ„ฐ


save()  ๋ฅผ ๋ณด๋ฉด Model์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฐ›๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

 

@RequestMapping(value = "/save",method = RequestMethod.POST)
 

 

@RequestMapping ์€ URL๋งŒ ๋งค์นญํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, HTTP Method๋„ ํ•จ๊ป˜ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค.


 

 

@PostMapping("/save")

 

์ด๊ฒƒ์„ @GetMapping , @PostMapping ์œผ๋กœ ๋” ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 

 

 

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-1/dashboard

 

์Šคํ”„๋ง MVC 1ํŽธ - ๋ฐฑ์—”๋“œ ์›น ๊ฐœ๋ฐœ ํ•ต์‹ฌ ๊ธฐ์ˆ  - ์ธํ”„๋Ÿฐ | ๊ฐ•์˜

์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ ํ•„์š”ํ•œ ๋ชจ๋“  ์›น ๊ธฐ์ˆ ์„ ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ดํ•ดํ•˜๊ณ , ์™„์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์Šคํ”„๋ง MVC์˜ ํ•ต์‹ฌ ์›๋ฆฌ์™€ ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•˜๊ณ , ๋” ๊นŠ์ด์žˆ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋กœ ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค., -

www.inflearn.com

 

์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

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

[์Šคํ”„๋ง MVC] - 13. ์š”์ฒญ ๋งคํ•‘ / ์š”์ฒญ ํŒŒ๋ผ๋ฏธํ„ฐ  (0) 2023.02.16
[์Šคํ”„๋ง MVC] - 12. ๋กœ๊ทธ / SLF4J / Logback  (0) 2023.02.16
[์Šคํ”„๋ง MVC] - 10. DispatcherServlet / ํ•ธ๋“ค๋Ÿฌ ๋งคํ•‘๊ณผ ํ•ธ๋“ค๋Ÿฌ ์–ด๋Œ‘ํ„ฐ  (0) 2023.02.15
[์Šคํ”„๋ง MVC] - 9. ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ - ์–ด๋Œ‘ํ„ฐ  (0) 2023.02.15
[์Šคํ”„๋ง MVC] - 8. ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ - ModelView  (0) 2023.02.14
'Spring/Spring MVC' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [์Šคํ”„๋ง MVC] - 13. ์š”์ฒญ ๋งคํ•‘ / ์š”์ฒญ ํŒŒ๋ผ๋ฏธํ„ฐ
  • [์Šคํ”„๋ง MVC] - 12. ๋กœ๊ทธ / SLF4J / Logback
  • [์Šคํ”„๋ง MVC] - 10. DispatcherServlet / ํ•ธ๋“ค๋Ÿฌ ๋งคํ•‘๊ณผ ํ•ธ๋“ค๋Ÿฌ ์–ด๋Œ‘ํ„ฐ
  • [์Šคํ”„๋ง MVC] - 9. ํ”„๋ก ํŠธ ์ปจํŠธ๋กค๋Ÿฌ - ์–ด๋Œ‘ํ„ฐ
hello_u
hello_u
  • hello_u
    ๐Ÿ˜œ
    hello_u
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๐Ÿ˜œ (345)
      • Hardware (2)
        • BMC (2)
      • Spring (109)
        • Spring ์ž…๋ฌธ (20)
        • Spring ๊ธฐ๋ณธ (27)
        • Spring MVC (18)
        • Spring DB (22)
        • Spring JPA ๊ธฐ๋ณธ (16)
        • Spring JPA ํ™œ์šฉ (6)
      • Develop (27)
        • DB (8)
        • JAVA (4)
        • Web (2)
        • Python (7)
        • OSS (2)
        • Git (2)
        • API (2)
      • Algorithm (155)
        • CodeUp ๊ธฐ์ดˆ (44)
        • ํŒŒ์ด์ฌ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ (64)
        • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (4)
        • SWEA (30)
        • Softeer (10)
        • BOJ (2)
      • CS (9)
        • ์ปดํ“จํ„ฐ์ผ๋ฐ˜ (3)
        • ์šด์˜์ฒด์ œ (3)
        • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (0)
        • ์ •๋ณดํ†ต์‹  (1)
        • ์ž๋ฃŒ๊ตฌ์กฐ (1)
        • ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ (1)
        • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด (0)
        • ์ตœ์‹  ๋””์ง€ํ„ธ, ์ผ๋ฐ˜์ƒ์‹ (0)
      • ์ž๊ฒฉ์ฆ (41)
        • ์ •๋ณด๋ณด์•ˆ๊ธฐ์‚ฌ (9)
        • ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ (22)
        • ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ 1๊ธ‰ (3)
        • SQLD (7)
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
hello_u
[์Šคํ”„๋ง MVC] - 11. @Controller / @RequestMapping
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”