我们的应用程序需要一个菜单系统,我们使用的是 Spring MVC 3。菜单将显示在每个页面上,并且菜单项存储在数据库中。在处理请求时将菜单项带回表示层的想法是什么?
非常感谢。
我们的应用程序需要一个菜单系统,我们使用的是 Spring MVC 3。菜单将显示在每个页面上,并且菜单项存储在数据库中。在处理请求时将菜单项带回表示层的想法是什么?
非常感谢。
您应该结合 HandlerInterceptorAdapter 使用 sitemesh(任何模板引擎都可能是图块)。下面是示例代码,
@Component
public class MenuHandler extends HandlerInterceptorAdapter {
@Autowired
private MenuService menuService;
@Override
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
load and set menu items in request attributes (session can also be used).
}
}
并将请求/会话属性用于公共菜单 jsp。