我正在尝试调用一个ID在/之间的url。
url如下所示:http://localhost:8080/chargeback/v1/dispute/22/events
我需要从控制器中恢复sysout中的值22。
我知道这听起来很容易,但在我的项目中,我和其他程序员一起尝试了很多次。也许有些配置我忘了。
接口:
@RequestMapping("/dispute")
public interface disputeEvents{
@GetMapping( value = "/{id}/events")
ResponseEntity<Void> getDisputeEvents(@RequestParam Long id);
}
控制器:
@Controller
public class testeController implements disputeEvents{
@Override
public ResponseEntity<Void> getDisputeEvents(Long id) {
System.out.println(id);
return null;
}
}
更改您的接口和类,如下代码所示。
@RequestMapping("/default")
public interface disputeEvents {
@GetMapping("/{id}/events")
ResponseEntity<Void> getDisputeEvents(@PathVariable Long id);
}
@Controller
@RequestMapping("/dispute")
public class testeController implements disputeEvents {
@Override
public ResponseEntity<Void> getDisputeEvents(Long id) {
System.out.println(id);
return null;
}
}
它适用于URL:http://localhost:8080/dispute/22/events.如果您希望它适用于Url:http://localhost:8080/chargeback/v1/dispute/22/events,将控制器类中的@RequestMapping("/directure"(更改为@RequestMap("/chargeback/v1/dispute"(。
我将@GetMapping("/{id}/events"(放入控制器中。
接口:
@RequestMapping("/default")
public interface disputeEvents {
@GetMapping( value = "/{id}/events")
ResponseEntity<Void> getDisputeEvents(@PathVariable(name = "id") Long id);
}
控制器:
@Controller
@RequestMapping("/dispute")
public class testeController implements disputeEvents{
@Override
public ResponseEntity<Void> getDisputeEvents(@PathVariable(name = "id") Long id) {
System.out.println("teste:" + id);
return null;
}
}