참치코더의 꿈 메모장

Spring / MVC 패턴 - 요즘 사용하는 방식 본문

Spring

Spring / MVC 패턴 - 요즘 사용하는 방식

참치깡 2025. 9. 9. 07:10
728x90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
@Controller
@RequestMapping("/springmvc/v3/members")
public class SpringMemberControllerV3 {
    
    private MemberRepository memberRepository = MemberRepository.getInstance();
 
    @GetMapping("/new-form")
    public String newForm(){
        return "new-form";
    }
 
    @PostMapping("/save")
    public String save(
        @RequestParam("username"String username,
        @RequestParam("age"int age,
        Model model
    ){
        Member member = new Member(username, age);
        memberRepository.save(member);
 
        model.addAttribute("member", member);
        return "save-result";
    }
 
    @GetMapping
    public String members(Model model){
        List<Member> members = memberRepository.findAll();
        model.addAttribute("members", members);
        return "members";
    }
}
cs

 

Model 파라미터

 

- 모델에 직접값을 x.addAttribute("value", value) 형태로 집어넣을 수 있다.

 

ViewName 직접 반환

 

- return "view 이름"을 해서 해당하는 view로 반환 할 수 있다.

 

@RequestParam 사용

 

- 해당 url을 호출하는 웹페이지의 파라미터 값을 @Request param("username") String username 받아서 

  변수에 할당 할 수 있다. (GET 쿼리 파라미터, POST 쿼리 파라미터 사용 가능)

 

@GetMapping, @PostMapping 가능

 

- @RequestParameter로 선언을 한 url은 제한없이 모든 값을 받을 수 있기 때문에 REST API 방식을 이용한

  데이터 요청 및 반환을 하려면 @GETMapping, @PostMapping 같은 어노테이션을 사용해야한다 

 

- 물론 @RequestParameter로도 해당 method를 선언할 수 있지만 요즘엔 위의 방법을 선호한다.

 

 ** @RequestMapping(value = "/new-form", method = RequestMethod.GET)

** GET, POST, PUT, DELETE, Patch 모두 Mapping 기능이 존재

728x90
Comments