在我当前的Spring项目中(使用Thymeleaf),我将这两个控制器HomeController和一个通用控制器扩展到与模型层实体相关联的所有控制器。
在HomeController中,我有这个modelAttribute方法:
@ModelAttribute("usuario")
public Usuario usuario() {
return usuario.findBy("username", SecurityContextHolder.getContext().getAuthentication().getName());
}这显然可以通过映射到该控制器中的视图来访问。有没有办法将这个modelAttribute与其他控制器中映射的视图共享?
我在很多地方读到过这个RedirectAttributes资源,但我猜它只适用于重定向视图(如modelAndView.setViewName("redirect:welcome");)?
发布于 2019-01-11 08:19:34
将该方法移动到单独的类中,并将@ControllerAdvice注释添加到该类中。这样,该类中的所有模型属性都将应用于应用程序中的所有控制器。
如果您想要限制模型属性可用的控制器集,您可以在@ControllerAdvice注释中指定只有特定包中的控制器、具有特定注释的控制器或实现特定接口的控制器应该得到增强。
https://stackoverflow.com/questions/54138492
复制相似问题