在我们的 spring rest 控制器中,我们希望使用具有不同类型参数的相同映射。为此,我们创建了通过映射参数区分的附加函数。通过这样做,我们复制了函数的数量。为避免这种情况,我想使用应根据参数值加载的不同控制器。
问题是我们能不能
@RequestMapping(value = "/v1")
@RestController
public class Controller {
@PostMapping(value = "/event-calendar", params = {"externalToken", "event_type"})
public ResponseEntity createEntityOfTypeToken(@RequestHeader(name = "X-Application-Authentication") String externalToken,
@RequestParam(value = "event_type") String eventType) {
MyEntity entity = service.createEntityOfType(
userService.getTokenService(externalToken).getDeviceSerialNumber());
return new ResponseEntity<>(entity, HttpStatus.OK);
}
@PostMapping(value = "/event-calendar", params = {"serialId", "event_type"})
public ResponseEntity createEntityOfTypeSerial(@RequestParam(value = "serialId") String serialId,
@RequestParam(value = "event_type") String eventType) {
MyEntity entity = service.createEntityOfType(serialId);
return new ResponseEntity<>(entity, HttpStatus.OK);
}
}