【问题标题】:Can we pass dynamic value to @RequestMapping annotation of spring mvc?我们可以将动态值传递给spring mvc的@RequestMapping注解吗?
【发布时间】:2018-01-14 09:39:59
【问题描述】:

我正在尝试以如下动态方式映射 URL, 考虑到我正在尝试使用不同的 URL 访问

http://localhost:8080/MyApp/XYZ/Login.htm

http://localhost:8080/MyApp/PQR/Login.htm

http://localhost:8080/MyApp/ABC/Login.htm

从上面的 URL 中,我想向不同的用户显示不同的 Login.htm 页面。 在上面的 URL 中,只有 XYZ、PQR 和 ABC 的请求发生了变化,其余的都是相同的,所以据我所知,这将在控制器类的类级别 @RequestMapping 注释中处理。 如果我设法将值动态传递给 @RequestMapping 注释,那么我想我可以实现我想要的。

请问,谁能建议我如何在@RequestMapping 注释中动态获取值?或任何其他在 URL 更改时获取不同登录页面的建议。

【问题讨论】:

标签: spring spring-mvc


【解决方案1】:

可以使用路径变量匹配

@RequestMapping(value = "/MyApp/{id}/Login.htm", method = GET)
@ResponseBody
public String getFoosBySimplePathWithPathVariable(
  @PathVariable("id") String id) {
    return id;
}

查看文档:

【讨论】:

  • 感谢@Boaz 的回复。你能详细说明一下这意味着我应该将 id 的值作为 pathVariable 传递吗?
  • @Robert,您是否阅读过 Boaz 提供的文档?它会给你答案。
【解决方案2】:

你使用了if else条件,URL的动态方式如下,如果条件我们请求映射我们给任何字符串直接正确的jsp页面,否则转到else部分指出404错误。

  i want correct code....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    相关资源
    最近更新 更多