有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Spring请求映射多个路径,确定调用哪个路径?

所以我有一个控制器@RequestMapping(value = { "/something", "/otherThing" })

我似乎不知道如何在我的控制器中确定当前正在服务的路径是“某物”还是“其他物”

在我的案例中,分解控制器并制作两个单独的控制器不是一个选项

有没有办法确定控制器方法中提供服务的路径


共 (2) 个答案

  1. # 1 楼答案

    您可以使用下面的代码获取url,并从中获取路径

    URL url = new URL(request.getRequestURL().toString());
    String path = url.getPath();
    

    您可以检查此路径并在逻辑中使用它

    希望它能帮助你的先生

  2. # 2 楼答案

    @RequestMapping(value = { "/something", "/otherThing" })
    public void polymorpHandlerMethod(HttpServletRequest request) {
        if (request.getContextPath().startsWith("/something")) {
            // do stuff
        } else if (request.getContextPath().startsWith("/otherThing")) {
            // do more stuff
        }
    }