sourcecode

봄에 여러 @RequestMapping 주석을 사용하는 방법

copyscript 2022. 7. 28. 23:43
반응형

봄에 여러 @RequestMapping 주석을 사용하는 방법

여러 개를 사용할 수 있습니까?@RequestMapping어떤 방법에 주석을 달까요?

예를 들어 다음과 같습니다.

@RequestMapping("/")
@RequestMapping("")
@RequestMapping("/welcome")
public String welcomeHandler(){
  return "welcome";
}

@RequestMapping가 있다String[]다음과 같이 여러 값을 지정할 수 있습니다.

@RequestMapping(value={"", "/", "welcome"})

테스트(스프링 3.0.5)에서는@RequestMapping(value={"", "/"})(만)"/"작동하다,""하지 않다.하지만 나는 이것이 효과가 있다는 것을 알았다.@RequestMapping(value={"/", " * "}),그" * "모든 것과 일치하기 때문에 다른 항목이 없는 경우 기본 핸들러가 됩니다.

그럴 필요 없어.RequestMapping 주석에서는 와일드카드 및 개미 스타일 경로를 지원합니다.기본 보기만 원하는 것 같으니까

<mvc:view-controller path="/" view-name="welcome"/>

를 참조해 주세요.그러면 루트에 대한 모든 요청이 시작 보기로 전송됩니다.

가장 짧은 방법은 다음과 같습니다.@RequestMapping({"", "/", "welcome"})

다음 작업도 가능합니다.

  • @RequestMapping(value={"", "/", "welcome"})
  • @RequestMapping(path={"", "/", "welcome"})

호출된 URI를 가져오려면 PathVariable 주석을 사용하는 것이 좋습니다.

@PostMapping("/pub/{action:a|b|c}")
public JSONObject handlexxx(@PathVariable String action, @RequestBody String reqStr){
...
}

또는 request object에서 해석합니다.

다음 사항도 허용됩니다.

@GetMapping(path = { "/{pathVariable1}/{pathVariable1}/somePath", 
                     "/fixedPath/{some-name}/{some-id}/fixed" }, 
            produces = "application/json")

같은 것을 에 적용할 수 있다.@RequestMapping뿐만 아니라.

현재 Spring-Boot 2.0.4를 사용하면 { }이(가) 작동하지 않습니다.

@RequestMapping

에는 값 파라미터로서 String []가 아직 설정되어 있기 때문에 선언은 다음과 같습니다.

 @RequestMapping(value=["/","/index","/login","/home"], method = RequestMethod.GET)

** 업데이트 - Spring-Boot 2에서 동작합니다.2**

 @RequestMapping(value={"/","/index","/login","/home"}, method = RequestMethod.GET)

언급URL : https://stackoverflow.com/questions/2513031/how-to-use-multiple-requestmapping-annotations-in-spring

반응형