2012-11-06 2 views
5

요청 파라미터는 Spring MVC 3.0을 사용하여 객체에 바인딩되어야한다. 요청 매개 변수에 밑줄 (예 :)이 포함되어 있습니다. 이 매개 변수는 다음 객체에 바인딩되어야합니다.Spring MVC 3.0에서 밑줄로 요청 파라미터 바인딩하기

class MyObject { 
    private Integer paramOne; 
    private Integer paramTwo; 

    ... 
} 

어떻게하면 되나요?

중요한 참고 사항 : 상당한 수의 매개 변수와 개체가있을 수 있으며 밑줄이 포함 된 개체에 setter 메서드를 정의하는 것이 좋지 않은 것으로 간주됩니다.

+1

이 질문에 대한 답변을 추가했습니다. 아래에서 확인할 수 있습니다. 내가 제공 한 것보다 더 우아한 해결책을 찾았습니까? 직접 더 나은 솔루션을 원합니다. –

답변

1

당신이 사용 @RequestMapping 속성을 할 수

@RequestParam(value = "param_One") String paramOne,@RequestParam(value = "param_two") String paramTwo 

메소드 서명

에이 추가하지만 좋은 결과를 위해 동일한 변수 이름을 통과하기 위해 더 연습

Rajith의 대답은 컨트롤러 방법입니다
+4

나는 답을 고맙게 생각하지만, 내가 말한 질문의 맨 아래에 *이 또한 상당한 양의 매개 변수와 객체가있을 수 있다는 점을 기억하십시오. '@ RequestParam'은 20 개가 넘는 인수를 갖는 컨트롤러 메소드 서명을 의미하기 때문에이 경우에는 실현 불가능합니다. – tmbrggmn

2

특히, 밑줄 매개 변수를 객체에 바인딩하는 방법을 묻는 질문에 대해서는 다루지 않습니다.

나는 현재 장소에 가지고있는 해키 솔루션은이 스타일로 내 세터의 이름을 무엇 당신이 실제로 요구하는 달성하는 것입니다

RequestParam이 방법을 적용 할 수 없습니다, 그것은하지 않습니다
public void setProject_ids(List<Long> project_ids) { 

주 이 Setter의 인수에 적용될 때의 효과.

관련 문제