@PathVariable传中文
时间: 2023-08-26 16:14:38 浏览: 96
@PathVariable可以传递中文参数,但是需要注意一些编码问题。在URL中,中文字符是需要进行URL编码的。在Spring MVC中,可以通过使用`URLEncoder.encode`方法进行编码,在接收参数时可以使用`URLDecoder.decode`方法进行解码。下面是一个示例代码:
```java
@RestController
@RequestMapping("/api")
public class MyController {
@GetMapping("/users/{name}")
public String getUserByName(@PathVariable("name") String name) {
try {
String decodedName = URLDecoder.decode(name, "UTF-8");
// 处理解码后的参数
return "Hello, " + decodedName + "!";
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
return "Error";
}
}
}
```
在调用接口时,可以将中文参数进行URL编码,例如将"张三"编码为"%E5%BC%A0%E4%B8%89",然后发送请求`GET /api/users/%E5%BC%A0%E4%B8%89`,服务器会解码参数并处理。
阅读全文