Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 有没有办法在Spring(启动)中使用@RequestMapping和@PathVariable来捕获变量路径?_Java_Spring_Spring Mvc_Spring Boot - Fatal编程技术网

Java 有没有办法在Spring(启动)中使用@RequestMapping和@PathVariable来捕获变量路径?

Java 有没有办法在Spring(启动)中使用@RequestMapping和@PathVariable来捕获变量路径?,java,spring,spring-mvc,spring-boot,Java,Spring,Spring Mvc,Spring Boot,我正在寻找一种捕获任何URL的方法,例如: mydomain.com/first/second/third mydomain.com/first/second/third/fourth mydomain.com/first/ 并且能够在我的控制器中的单个方法中捕获它,并使用路径构建一个字符串,如: for (String pathVar : pathVariableArray){ stringToBuild += pathVar + '.' } 并得到以下结果: string

我正在寻找一种捕获任何URL的方法,例如:

mydomain.com/first/second/third  
mydomain.com/first/second/third/fourth  
mydomain.com/first/
并且能够在我的控制器中的单个方法中捕获它,并使用路径构建一个字符串,如:

for (String pathVar : pathVariableArray){  
  stringToBuild += pathVar + '.'
}
并得到以下结果:

stringToBuild = "first.second.third."  
stringToBuild = "first.second.third.fourth."  
stringToBuild = "first."
有办法吗?我不想为不同长度的路径编写不同的方法

@RequestMapping("/**")
public void method(HttpServletRequest request) {
    String stringToBuild = request.getServletPath().replace("/", ".") + ".";
有关其他映射方法,请参见

如果路径以
/
结尾,您可能需要更加复杂,以避免在末尾出现双

有关其他映射方法,请参见


如果路径以
/

结尾,您可能需要更加复杂,以避免在结尾出现双重
,您的回答确实有帮助,但我需要做一点小小的更正。因为您使用的是通配符,所以必须使用getServletPath而不是getPathInfo,否则会得到一个空值。您的回答确实有帮助,但我需要做一点更正。因为您使用的是通配符,所以必须使用getServletPath而不是getPathInfo,否则将得到一个空值。