我在前台点击一个连接后,通过${pageContext.request.contextPath}/admin/select.action?user_department=${dep.user_department}这个请求去调用controller里的一个方法
时,传入的这个user_department参数是乱码是怎么回事?
//这是前台那个请求
<a href="${pageContext.request.contextPath}/admin/select.action?user_department=${dep.user_department}">
<span>连接</span>
</a>
//这是controller里那个方法
@RequestMapping(value = "/admin/select.action")
public String list(@RequestParam String user_department,Model model){
//这里我输出时发现它是一串乱码
System.out.println(user_department);
}
这是输出的乱码
修改tomcat的server.xml(在conf文件下),找到下面代码添加URIEncoding编码。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
中文参数urlencode一下,或者tomcat service.xml <Connector port="8008" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
需要在容器中设置,例如tomcat根目录的conf下的server.xml,
Connector增加URIEncoding="UTF-8"
设置容器编码 URIEncoding="UTF-8"