Spring请求将URL映射到一个控制器

时间:2011-10-17 00:30:12

标签: java spring spring-mvc

我已经问过一个关于类似网址映射到同一控制器的最近问题。 在这种情况下,我不得不给它3或4个网址,这很好。

Spring Request Mapping Mis

该示例包含以下内容。

@RequestMapping({"/protect", "/protekt", "/proteckt", "/protext"})

我现在的问题是有100-150个网址基本上通过一个控制器。这些URL将包含在数据库中。我正在寻找一种优雅的方式来在请求映射中维护它,而不是放置100个不同的URL(可能会改变),特别是因为我正在工作的客户端不想对后端进行任何更改。有一种优雅的方式来做到这一点?感谢。

1 个答案:

答案 0 :(得分:4)

我可能首先想一下提供一个SimpleUrlHandlerMapping子类的方法,该子类从数据库中获取其值列表。它非常直接,使您不必进入任何扫描,并使配置相当本地化为一大块XML(以及DB内容)。

(我认为你只需需要来实现HandlerMapping,但从SimpleUrlHandlerMapping开始可能会更快 - 这对我来说是明天的测试黑客。 )

您没有说这些网址是否需要在运行时更改;如果他们这样做,那么你需要能够更深入地更新实际的映射 - 不知道如何做到这一点。