Spring MVC中@PathVariable中的问号?

sp0*_*00m 1 path-variables spring-mvc

@Controller搜索引擎内:

@RequestMapping(value = "/search/{query}", method = RequestMethod.GET)
public String search(@PathVariable String query) {}
Run Code Online (Sandbox Code Playgroud)

如果用户想要搜索/search/w?rld(wich应匹配world,warld,whrld等),则变量query等于w,因为问号表示GET var.

我试过了"/search/{query:.+}",但仍然无法正常工作.

知道如何解决这个问题吗?

JB *_*zet 5

问题不在Spring配置中.它在URL中.问号是指示查询字符串开头的符号.如果它是URL的一部分,则必须对其进行编码:

/search/w%3Frld
Run Code Online (Sandbox Code Playgroud)