我有一个名为 thymeleaf 的片段nav,我包含在所有前端页面中,它是这样的:<nav class="navbar navbar-expand-md navbar-dark bg-dark" th:fragment="nav"> <div class="collapse navbar-collapse" id="navbarsExampleDefault"> <ul class="navbar-nav mr-auto"> <li class="nav-item active"> <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> </li>How to get Java data here ? </ul> </div></nav>但是我现在想做的是从数据库中获取一些数据,并在这个片段中提供这些数据,而这些数据又会出现在包含这个片段的每个页面上。如果我想定期从控制器向视图传递数据,我会使用Model并model.addAttribute返回包含相关模型数据的适当视图,但是如何将数据传递给该片段?
1 回答

慕容森
TA贡献1853条经验 获得超18个赞
您可以创建一个拦截器并在
postHandle
方法上添加模型属性(这允许您访问ModelAndView
对象。拦截器必须位于具有此片段的所有控制器上。您可以将相关模型属性添加到会话并通过
${session.attribute}
.结合使用
@ControllerAdvice
注解@ModelAttribute
为所有控制器添加模型属性。
添加回答
举报
0/150
提交
取消