본문 바로가기

프로그래밍/스프링[Spring]

[스프링] RequestParam 을 VO로 바로 받는 방법



이번에는 RequestParam 대신 VO로 한번에 받는 방법에 대해 간단 소개해드리겠습니다.

 

 

데이터를 주고 받을때 RequestParam을 사용하여 Request 된 데이터를 받아서 코딩하시는 분들이 많은데요

 

 

자 예제 파라미터는 다음과 같습니다.

id = testId

name = testname

 

RequestParam을 이용하시는 경우 이렇게 코딩하게 되는데요.. 

@RequestMapping(value = "/test.do")
@ResponseBody
public String test(@RequestParam("id") String id, @RequestParam("name") String name) throws Exception{
    return "id=" + id +", "+"name="+name;
}

 

 

※참고로 @ResponseBody 태그로 호출할 화면의 파일명이 아닌 String 형태로 화면에 바로 뿌려주었습니다.

 

파라미터가 점점 많아지면 코딩에 있어서 많이 지저분할겁니다.

 

파라미터를 한번에 VO에 담기위한 방법은 간단합니다.

 

@RequestMapping(value = "/test.do")
@ResponseBody
public String test(TestVO testVO) throws Exception{
    return "id=" + testVO.getId() +", "+"name="+testVO.getName();
}

자 @RequestParam 선언하는곳에 해당 VO만 넣어주면 자동적으로 맵핑이 됩니다.

 

여기서 주의할 사항이 있습니다.

 

public class TestVO implements Serializable {
    
    private String id;       //id
    private String name;     //이름
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

이런식으로 해당 파라미터와 VO 의 파라미터 명이 일치해야 자동으로 맵핑이 됩니다.

 

이상입니다. 감사합니다.