[SPRING] Java Spring의 오버로드 컨트롤러 메소드
SPRINGJava Spring의 오버로드 컨트롤러 메소드
서로 다른 URL 매개 변수로 다르게 동작해야하는 컨트롤러가 있습니다. 이 같은:
@RequestMapping(method = RequestMethod.GET)
public A getA(@RequestParam int id, @RequestParam String query) {
...
}
@RequestMapping(method = RequestMethod.GET)
public A getA(@RequestParam int id) {
...
}
하지만이 작동하지 않는 것, 나는 다음과 같은 예외가 :
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/boot/autoconfigure/web/WebMvcAutoConfiguration$EnableWebMvcConfiguration.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping found. Cannot map '[controller name]' bean method
응용 프로그램이 URL 매개 변수에 따라 메서드를 선택하는 방법이 있습니까?
해결법
-
==============================
1.params가 존재해야하는 매핑을 나타냅니다.
params가 존재해야하는 매핑을 나타냅니다.
@RequestMapping(method = RequestMethod.GET, params = {"id", "query"}) public A getA(@RequestParam int id, @RequestParam String query) { ... } @RequestMapping(method = RequestMethod.GET, params = {"id"}) public A getA(@RequestParam int id) { ... }
from https://stackoverflow.com/questions/30380498/overload-controller-method-in-java-spring by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 통합 또는 Apache HTTP 클라이언트 (0) | 2019.03.26 |
---|---|
[SPRING] 스프링 데이터 jpa utf-8 인코딩이 작동하지 않습니다. (0) | 2019.03.26 |
[SPRING] 스프링 autowire 및 프로토 타입 범위 (0) | 2019.03.26 |
[SPRING] 왜 Spring은 @DependsOn 주석을 무시 했습니까? (0) | 2019.03.26 |
[SPRING] @PersistenceContext Spring 및 Java EE의 EntityManager 스레드 안전성 (0) | 2019.03.26 |