当前位置: 首页 > 知识库问答 >
问题:

如何在spring filter或java中获取路径变量

冯翔
2023-03-14

我想从/v1/testId/111示例URL获取{testId:111}

我知道,如果使用request.getAttribute(HandlerMapping.uri_template_variables_attribute)方法获取路径变量非常简单。

但是,过滤器是在servlet之前执行的。

或者,没有request.getAttribute(HandlerMapping.uri_template_variables_attribute)方法,有没有方法检索路径变量?

/v1/testid/111字符串实际上是可用的,我打算从中提取111。

共有1个答案

有骏奇
2023-03-14

您正在查找lastIndexOf,这是String的方法。

String foo = "/v1/testId/111";
String theValue = foo.substring(foo.lastIndexOf("/") + 1);

LastIndexOf返回最后一个斜杠的数值位置,从下一个数值位置获取子字符串将有效地返回最后一个斜杠之后的所有内容。

编辑

String string = "/v1/testId/111/userId/222";
String[] parts = string.split("/");
for (int index = 0; index < parts.length; index++) {
    if (isNumeric(parts(index))) {
        //Do something with these values as you please
        String entityName = parts[index - 1];
        String entityValue = parts[index];
    }
}
public static boolean isNumeric(String strNum) {
    if ((strNum == null) || (strNum.equals(""))) {
        return false;
    }
    try {
        double d = Double.parseDouble(strNum);
    } catch (NumberFormatException nfe) {
        return false;
    }
    return true;
}
 类似资料:
  • 问题内容: 我需要配置我的Jenkins服务器,并且需要向Jenkins配置添加Java路径。 但是我是lunix命令的新手,有什么建议吗? 我不知道在哪里安装它! 查看经过验证的答案! 问题答案: 这是解决方案 感谢tecadmin

  • 我正在处理一个安全过滤器,它需要根据path变量的值做一些检查。我试着这样做: 但映射始终为空,因此我的筛选器的优先级似乎高于在请求中填充属性的。 我已尝试添加以下配置: 这没有帮助,筛选器是在调用之前执行的。 在我的安全过滤器中,我获取Auth头,解密它,从中获取并将它与路径var值进行比较。如果这些ID不匹配,我返回403。 我想知道是否有可能覆盖这两个动作的顺序。或者,也许,有其他的方法来检

  • 在实现持久底部栏时,当单击底部栏中的按钮时,需要恢复以前的路由。 单击底部栏中的按钮时,会保存其当前路线路径(/a/b/c ),并根据按钮的单击恢复先前保存的路线。 从概念上讲,用户会认为每个按钮都是一个工作区,其状态永远不会丢失(包括后退堆栈)。用户可以安全地从一个工作区切换到另一个工作区。 当路由重绕到根时,如何在Flutter中获取当前路由路径?

  • 我在Spring反应式应用程序中工作。我知道如何使用HttpServletRequest在拦截器中获取PathVariable,有些是这样的: 但是我们不得不做一些更改,现在我们有了一个WebFilter实现,所以我们不使用HttpServletRequest,而是使用ServerWebExchange 如何从ServerWebExchange获取路径变量?可能吗?

  • 问题内容: 在实现持久性底部栏时,单击底部栏中的按钮时,需要恢复以前的路线。 单击底部栏中的按钮时,将保存其当前路径路径(/ a / b / c ),并根据该按钮单击恢复先前保存的路径。 从概念上讲,用户会将每个按钮视为一个工作区,并且其状态永远不会丢失(包括后退堆栈)。用户可以安全地从一个工作区切换到另一个工作区。 当路由重绕到根时,如何在Flutter中获取当前路由路径? 问题答案: 不会公开

  • 我需要得到当前路径的url在路由更改和基于值我想做条件渲染 这是我的代码,我没有继续的想法。 所以我需要做的是: 对于每个更改,我需要更新的值,并进行条件渲染,并将该值(路径)作为