[SPRING] Spring MVC - 요청 매핑, 두 개의 다른 매개 변수가있는 두 개의 URL
SPRINGSpring MVC - 요청 매핑, 두 개의 다른 매개 변수가있는 두 개의 URL
Spring에서 각각의 메소드에 대해 서로 다른 매개 변수를 갖는 두 개의 서로 다른 URL을 가진 하나의 메소드를 가질 수 있습니까?
아래는 의사 코드입니다.
@RequestMethod(URL1-param1, URL2-param2)
public void handleAction(@ModelAttribute("A") A a, ...) {
}
동시에 ULR1은 다른 컨트롤러에서 다음과 같이 맵핑됩니다.
@RequestMethod(URL1)
public void handleAction1(@ModelAttribute("A") A a, ...) {
}
해결법
-
==============================
1.업데이트 : 귀하의 질문이 완전히 다른 것으로 보입니다.
업데이트 : 귀하의 질문이 완전히 다른 것으로 보입니다.
아니요, 다른 컨트롤러에서 다른 매개 변수를 사용하여 동일한 URL을 가질 수 없습니다. URL은 자원이나 동작을 지정하고 두 컨트롤러 (다른 동작을 나타냄)에서 똑같은 이름을 지정할 수는 없습니다.
두 가지 옵션이 있습니다.
원문 답변 :
아닙니다.하지만 같은 일을하는 두 가지 방법을 사용할 수 있습니다.
@RequestMethod("/foo") public void foo(@ModelAttribute("A") A a) { foobar(a, null); } @RequestMethod("/bar") public void bar(@ModelAttribute("B") B b) { foobar(null, b); }
제대로 이해하지 못했고 동일한 ModelAttribute를 원한다면 간단히 다음을 수행하십시오.
@RequestMapping(value={"/foo", "/bar"})
마지막으로 - 다른 요청 매개 변수가 필요한 경우 @RequestParam (required = false)을 사용하여 가능한 모든 매개 변수를 나열 할 수 있습니다.
-
==============================
2.당신은 다음과 같이 당신의 처리기를위한 다중 매핑을 제공 할 수있다.
당신은 다음과 같이 당신의 처리기를위한 다중 매핑을 제공 할 수있다.
@RequestMapping(value={"", "/", "welcome"}) public void handleAction(@ModelAttribute("A") A a, ...) { }
그러나 각 매핑에 대해 다른 매개 변수를 사용하려면 메서드를 추출해야합니다.
-
==============================
3.이 같은
이 같은
@RequestMapping(value={"URL1"}, method=RequestMethod.POST) public String handleSubmit(@ModelAttribute("A") A command, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { return helperSubmit(); } @RequestMapping(value={"URL2"}, method=RequestMethod.POST) public String handleSubmit(@ModelAttribute("A") A command, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { return helperSubmit(); } private helperSubmit() { return "redirect:" + someUrl; }
from https://stackoverflow.com/questions/6571307/spring-mvc-request-mapping-two-urls-with-two-different-parameters by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] URL 패턴을 기반으로 스프링 부트 필터를 적용하는 방법은 무엇입니까? (0) | 2019.02.14 |
---|---|
[SPRING] 임베디드 ActiveMQ의 시작 오류 : 임시 저장소 제한은 51200MB입니다. (0) | 2019.02.14 |
[SPRING] Spring @ Transactional 및 JDBC autoCommit (0) | 2019.02.14 |
[SPRING] Spring @autowired는 non-singleton 컨테이너가 아닌가요? (0) | 2019.02.14 |
[SPRING] Thymeleaf / Spring MVC - Link 표현식에서 변수 / 표현식을 중첩하는 방법은 무엇입니까? (0) | 2019.02.14 |