it-day/springboot

Command 객체

별지킴Lee 2023. 10. 15. 14:54

JSP, Servlert 

@RequestMapping("/test1")

public String test1(HttpServletRequest httpServletRequest, Model model) {

    String id = httpServletRequest.getParameter("id");

    String name = httpServletRequest.getParameter("name");

 

    model.addAttribute("id" , id);

    model.addAttribute("name" , name);

 

    return "test1";

}

 

스프링부트

@RequestMapping("/test2")

public String test2(@RequestParam("id") String id

                              @RequestParam("name") String name

                              , Model model) {

 

    model.addAttribute("id" , id);

    model.addAttribute("name" , name);

 

    return "test2";

}

 

그러나 이 두가지 방법도 파라미터가 많아지면 불----------편

 

Member.java

@Data

public class Member {

    private String id;

    private String name;

}

 

파라미터와 같은 이름을 멤버 변수로 가지는 클래스를 만들어서 객체 타입으로 파라미터를 한꺼번에 처리

 

@RequestMapping("/test3")

public String test3( Member member , Model model) {

 

    return "test3";

 

}

 

Command 객체

Member.java 에 같은 이름의 변수를 파라미터 처리!!!