使用@RequestParam得到的参数是个乱码,是怎么回事?

我在前台点击一个连接后,通过${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"