spring mvc路径变量编码

Nao*_*aor 3 java encoding spring-mvc

我正在使用spring mvc.我正在冲浪:

http://localhost:8080/services/cities/??.html
Run Code Online (Sandbox Code Playgroud)

通知??是希伯来语而不是英语.
我的控制器是:

@RequestMapping(value="/services/cities/{name}", method=RequestMethod.GET)
public @ResponseBody List<SelectElement> getCities(@PathVariable String name) {
    List<SelectElement> elements=null;
    ...
    ...
    return elements;
}
Run Code Online (Sandbox Code Playgroud)

问题是控制器接收פת而不是正确的字符.
我该如何解决?

即使我冲浪:http://localhost:8080/services/cities/%D7%A4%D7%AA.html我遇到了这个问题.

nic*_*dos 5

如果您使用的是Tomcat,那么你必须通过向指定的请求URL编码URIEncoding="UTF-8"<Connector>在Tomcat server.xml的配置,如下所述:

http://wiki.apache.org/tomcat/FAQ/CharacterEncoding#Q8