0
내가 제출 한 경우이 예제에서 양식에서 하나 개의 매개 변수를 두 개의 스프링 MVC 작업이 있습니다스프링 MVC 입력 매개 변수 @RequestParam 문자열 requestedURL
public ModelAndView login(HttpServletResponse response, HttpServletRequest request,
@RequestParam String requestedURL)
나는 속성이 requestedURL가 참조 할 수 있는지 알고 싶습니다
실제로 들어오는 속성 입력 이름 = "requestURL"의 이름을 보유 선언 된 변수 ...
class Core {
static String requestedURL = "requestedURL";
}
의사 코드 :
public ModelAndView login(..., @RequestParam String @ReadFrom(Core.RequestedURL))
을 주목 @ReadFrom
이 피하기 중복이다. 지금은 requestedURL이라고 부르지 만 나중에 누군가가 입력 매개 변수 이름을 변경하려고 할 수 있습니다. 이는 내 의견으로는 응용 프로그램의 하드 코딩 된 문자열이 아니어야합니다. 제출시
및
<input name="<%= Core.requestedURL %>" value="<%= requestedURL %>" />
및
이 방법에서 읽습니다. 그러나 속성 이름은 동작 방법의 수신 매개 변수에으로 하드 코드 된 이어야합니까?감사합니다.
최종 작품 좋은, 실제로는 나의 마지막이다. 최종면 어떻게 보일까요? 그렇지 않으면 제안이 좋은 해결 방법이 될 수 있습니다. 감사! – momomo
방금 RequestParam 클래스를 살펴 보았습니다. 속성 값 = ""...이게 뭐야? 최종에 대해서는 아무 것도 말하지 않습니다 .. – momomo
업데이트에 추가했습니다 - 기본적으로 브라우저에서 기대하는 속성 이름입니다. 메소드 매개 변수 자체 (requestedURL)는 컴파일 후에 변경됩니다 (디버그 기호가 켜져 있지 않으면) @RequestParam의 값 속성은 속성의 이름을 표시하는 방법입니다 –