次のシグネチャを持つコントローラー クラスがあります。
@Controller
@RequestMapping("/home/users")
public class MaterialsController { ... }
このコントローラ クラスのすべてのメソッドは、同じパス変数で始まります。つまり、{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) {
{username}
さて、これらのコントローラーの各メソッドの最初に記述するのは少し面倒です。このパス変数をクラス レベルで指定する方法はありますか? @PathVariable String username
もちろん、上記のメソッドで指定したのと同じように、アクセスする必要もあります。
また、必要に応じて、クラスレベルで複数の変数を含めることも理想的です。