【发布时间】:2012-10-03 14:09:00
【问题描述】:
使用 Spring MVC,我知道您如何在每个控制器和方法/动作中设置 RequestMapping。
但是如果我希望它是可配置的,例如我下面的控制器:
BlogController
- with methods for listing blogs entries, single entry, new, update, etc.
ArticleController
- with methods for listing articles entries, single entry, new, update, etc.
现在在我的应用程序中,管理员可以为网站设置 2 个博客和 1 个文章部分,因此网址如下:
www.example.com/article_section1/ - uses ArticleController
www.example.com/blog1/ - uses BlogController
www.example.com/blog2/ - uses BlogController
也许一段时间后管理员想要另一个文章部分,所以他们只需配置一个新部分,例如:
www.example.com/article_section2/
这必须动态/即时工作,当然无需重新启动应用程序。
我的问题只涉及如何处理到控制器的 url 映射。
如何使用 Spring MVC 实现这一点?
我只知道如何在控制器或方法级别使用 @RequestMapping("/helloWorld") 将 url 映射到控制器,但这使得 url 映射是固定的,不能像我想要的那样进行配置。
更新:
我会将路径存储在数据库中,并映射到控制器类型,如下所示:
path controller
/article_section1/ article
/blog1/ blog
/blog2/ blog
..
有了以上信息,我如何将请求分派给正确的控制器?
同样,不打算重新加载/重新部署,我意识到这需要更多的工作,但它在规范中:)
【问题讨论】:
-
你最终是如何实现这个的?我也有类似的情况。
标签: java spring spring-mvc