【问题标题】:Frontend navigation strategy with Spring MVC and JSP webappSpring MVC 和 JSP webapp 的前端导航策略
【发布时间】:2015-08-11 13:45:47
【问题描述】:

这可能是一个奇怪的问题,但我找不到任何关于这个主题的提示、想法、操作方法。我正在寻找在基于 spring 的 web 应用程序中控制我的前端导航/菜单的想法或方法。

我正在使用带有 Sitemesh 和 JSP 的最新 Spring MVC 框架。

这就是我目前的实现方式:

用户点击前端导航中的一个元素 ==> 请求由我的 spring 控制器发送和处理 ==> 现在我正在设置一个请求属性 ==> 下次检查我的 JSP 是否有要突出显示的内容导航/菜单。

我可以看到这种方法的许多缺点,因为我需要始终在我的控制器操作和 jsps 中手动处理这个问题,此外,它感觉有点超载,因为这是我在 10 年前在好的旧 struts webapps 中看到的方式。 ..

有人对如何实施简洁明了的导航策略有任何想法吗?

【问题讨论】:

标签: spring-mvc


【解决方案1】:

这就是我在我的 SiteMesh 装饰器中所做的:

<c:set var="path" value="${requestScope['javax.servlet.forward.request_uri']}"/>

稍后,在菜单中...

<li class="${fn:startsWith(path, '/somePath')?' active':''}">
  <a href="<c:url value='/somePath/whatever'/>">Some Path</a>
</li>

【讨论】:

  • 比起我目前使用的方法,我更喜欢这种方法。至少你不需要像我现在那样处理请求属性。但在重构​​控制器/动作名称的情况下仍然容易出错。如果您使用 i18n uris 也有点危险(我没有计划)。但是谢谢你的想法!根据我目前得到的反馈,目前看来并没有一些共同的策略/最佳实践......
猜你喜欢
  • 2011-03-22
  • 2014-07-23
  • 1970-01-01
  • 2016-08-13
  • 2013-02-04
  • 1970-01-01
  • 2011-07-20
  • 2022-10-22
  • 1970-01-01
相关资源
最近更新 更多