0
スプリングコンテナへの新しいリクエストごとにモデル属性としてオブジェクトを設定したいと思います。spring mvcのモデル属性を自動的に設定
私は以下のことをしました。 は、その中にリクエストオブジェクト -registered
インターセプターが実行なっているインターセプタにオブジェクトを追加してい新しいインターセプタを-Addedが、コントローラはヌルとしてすべての値を持つ従業員のオブジェクトを返しています。何か間違っているのですか?代わりにAbstractInterceptorを使用しての
public class UserDetailsInterceptor extends AbstractInterceptor {
private static Class<? extends Annotation> annotationName = PopulateUserDetails.class;
public UserDetailsInterceptor() {
super(annotationName);
}
@Override
protected boolean handle(HttpServletRequest request, HttpServletResponse response, HandlerMethod handlerMethod)
throws Exception {
log.error("running my interceptor handle now");
Employee empoyee = populateEmployeeDetails();
request.setAttribute("employee",employee");
return true;
}
}
@Slf4j
@RestController
@CrossOrigin
public class TestController {
@RequestMapping(value = "/tst1", method = RequestMethod.GET)
@PopulateEmployee
public Employee getEmployee(@ModelAttribute("employee") Employee employee) {
return employee;
}
}
リクエスト属性のようになりますHandlerInterceptorAdapterを使用しています。 Spring MVCはビューをレンダリングしようとすると、モデル属性をリクエスト属性に転送します。 –
モデル属性を設定するにはどうすればいいですか?インターセプタからモデル属性を追加したい – user93796
コントローラのメソッドで 'populateEmployeeDetails()'を呼び出さないのはなぜですか? –