здесь ваша проблема
@PathVariable("moduleId") Integer moduleId,@PathVariable("records") Integer records
вам нужны moduleId и записи параметров для обоих ваших URL, в первом URL "/durationtrend/{moduleId}"
у вас не былоПараметр records, поэтому у вас есть
org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver.resolveException Resolved [org.springframework.web.bind.MissingPathVariableException: отсутствует переменная шаблона URI для метода «records» для записейтипа Integer]
эта ошибка
На самом деле, вы можете достичь этой цели разными способами, например, используя HttpServletRequest и другие вещи, но помните, что вы используете spring и вам нужно упроститьВещи, использующие Spring Framework.
Простой способ, который я предлагаю, - использовать два отдельных контроллера и упростить вещи.
@GetMapping("/durationtrend/{moduleId}")
public void getExecutionDurationByModuleId(@PathVariable("moduleId") Integer moduleId) {
return executionDurationService.getExecutionDuration(moduleId);
System.out.println(moduleId);
}
@GetMapping("/durationtrend/{moduleId}/{records}")
public void getExecutionDurationByRecords(@PathVariable("moduleId") Integer moduleId, @PathVariable("records") Integer records) {
return executionDurationService.getExecutionDuration(moduleId, records);
System.out.println(moduleId);
System.out.println(records);
}
это легко понять, и вы можете создать метод getExecutionDuration (moduleId) в своем классе обслуживания и легко обойти его ...
надеюсь, что это полезно ...