我有一个具有以下签名的 Controller 类:
@Controller
@RequestMapping("/home/users")
public class MaterialsController { ... }
并且该 Controller 类中的每个方法都以相同的路径变量开头,即{username}
,例如,我有以下方法:
@RequestMapping(value = "{username}/mycreations/{coursewareName}/materials/{materialId}", method = RequestMethod.DELETE)
public void deleteCourseMaterialFromCreatedCourseware(@PathVariable String username,
@PathVariable String coursewareName, @PathVariable String materialId, Model model,
HttpServletRequest request, HttpServletResponse response) {
现在,在每个 Controller 方法的开头编写 {username}
有点乏味。有没有办法在类级别指定此路径变量?当然,我还需要访问它,就像我在上面的方法中指定 @PathVariable String username
一样。
此外,理想情况下,我还希望在必要时在类级别包含多个变量。
最佳答案
是的,您可以将其放在类级别,但必须将其包含在适当方法的路径变量中。
关于java - 如何简化这些 Controller 的请求映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37241521/