我目前有这种方法:
@RequestMapping(value = "/{id}/behavior/{behaviorId}", method = RequestMethod.PUT)
private ResponseEntity modifyBehavior(@PathVariable("id") String id, @PathVariable("behaviorId") String behaviorId, @RequestBody BehaviorDto behaviorDto) {
if (aptitudeRepository.findById(id) == null) {
return new ResponseEntity(HttpStatus.BAD_REQUEST);
}
if (aptitudeRepository.findBehaviorById(id, behaviorId) == null) {
return new ResponseEntity(HttpStatus.NOT_FOUND);
} Behavior behavior = new Behavior(behaviorId,behaviorDto.getEn(),behaviorDto.getEs());
return new ResponseEntity(aptitudeRepository.updateBehaviorById(id, behavior), HttpStatus.ACCEPTED);
我正在按照我喜欢的方式处理这个方法中的请求,但是我的同事告诉我这个方法(以及其他行为方法应该在他们自己的 BehaviorController 类中。
我将行为处理的方法移动到另一个类(BehaviorController),并且所有方法都非常有效。第一种方法/aptitude
和/aptitude/{id}
被重定向到 aptitudeController ,而/aptitude/{id}/behavior
和aptitude/{id}/behavior/id
等其他方法被成功重定向到 BehaviorController ,一切都很好。
buuuuut现在有人告诉我这个方法应该从 AptitudeController 重定向到 BehaviorController 。连同他们的@PathVariables并返回另一个方法返回(xD对不起英语不好)
所以它会结束这样的事情:
@RequestMapping(value = "/{id}/behavior/{behaviorId}", method = RequestMethod.PUT)
private ResponseEntity modifyBehavior(@PathVariable("id") String id,
@PathVariable("behaviorId") String behaviorId,
@RequestBody BehaviorDto behaviorDto) {
return *somehowMethodRedirecting*?
有人能指出我正确的方向吗?
答案 0 :(得分:0)
您从BehaviorController的AptitudeController创建一个bean,您可以将您的值传递给BehaviorController。根据我的经验,您无法返回BehaviorController。
您正在使用浏览器中的url调用此方法。然后浏览器将获得呈现内容的响应。