SpringMVC支持ant风格的路径
?:表示任意的单个字符
java
<a th:href="@{/a1a//testAnt}">测试Ant风格的路径:?:表示任意的单个字符</a><br/>
@RequestMapping("/a?a/testAnt")//?:表示任意的单个字符
public String testAnt() {
return "target";
}
*:表示任意的0个或多个字符
java
<a th:href="@{/aaaa//testAnt}">测试Ant风格的路径:*:表示任意的0个或多个字符</a><br/>
@RequestMapping("/a*a/testAnt")//*:表示任意的0个或多个字符
public String testAnt() {
return "target";
}
**:表示任意的一层或多层目录
java
<a th:href="@{/aa/aa/testAnt}">测试Ant风格的路径:**:表示任意的一层或多层目录</a><br/>
<a th:href="@{/aa/testAnt}">测试Ant风格的路径:**:表示任意的一层或多层目录</a><br/>
@RequestMapping("/**/testAnt")//**:表示任意的一层或多层目录
public String testAnt() {
return "target";
}
注意:在使用**时,只能使用/**/xxx的方式
SpringMVC支持路径中的占位符{}
原始方式:/deleteUser?id=1
rest方式:/deleteUser/1
SpringMVC路径中的占位符常用于RESTful风格中,当请求路径中将某些数据通过路径的方式传输到服务器
中,就可以在相应的@RequestMapping注解的value属性中通过占位符{xxx}表示传输的数据,再通过
@PathVariable注解,将占位符所表示的数据赋值给控制器方法的形参
java
<a th:href="@{/testpath/1}">SpringMVC支持路径中的占位符->testpath</a><br/>
//路径的请求参数用{}来表示占位符
@RequestMapping(value = "/testpath/{id}")
public String testpath(@PathVariable("id")Integer id) {//@PathVariable("id")Integer id 获取请求参数的值
System.out.println(id);
return "target";
}
请求参数多个:
java
<a th:href="@{/testpath/1/admin}">SpringMVC支持路径中的占位符->testpath</a><br/>
//路径的请求参数用{}来表示占位符
@RequestMapping(value = "/testpath/{id}/{username}")
public String testpath(@PathVariable("id")Integer id,@PathVariable("username")String username) {//@PathVariable("id")Integer id 获取请求参数的值
System.out.println(id);
System.out.println(username);
return "target";
}