您的位置 首页 java

你会解决Spring @RequestParam乱码问题吗?

在网上找了很多资料才找到解决的方法,通过URL传递命名参数,后台接收的却是乱码解决方法如下:

方法一:将接收的参数重新 编码

@ request Mapping(value=”/handle”)

public String handle81(@RequestParam(“userName”) String userName){

userName=new String(userName.getBytes(“ISO-8859-1″), ” utf-8 “)

modelMap.put(“userName”, userName);

return “/user/showUser”;

}

方法二:在web.xml里面配置

<!– 字符过滤器 –>

<filter>

<filter-name>encodingFilter</filter-name>

<filter-class>org.springframework.web.filter.Character encoding Filter</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>UTF-8</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>encodingFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

方法三:修改tomcat的server.xml(在conf文件下),找到下面代码添加URIEncoding编码。

<Connector port=”8080″ protocol=”HTTP/1.1″

connectionTimeout=”20000″

redirectPort=”8443″ URIEncoding=”UTF-8″/>

最终我的解决方法时方法二和方法三同时用,没用方法一才解决@RequestParam乱码问题。

另外表单提交时出现乱码解决方法如下:

一、首先将Eclipse文件编码是UTF-8:Windows——Preference——General——Workspace——Text file encoding改为UTF-8.

二、设置页面编码

<%@ page language=" Java " import="java.util.*" pageEncoding="utf-8"
  contentType ="text/html; charset=utf-8"%>
<%
 request.setCharacterEncoding("utf-8");
%>
 

三、将form表单提交方式变为post方式,即添加method=”post”

四、在action类中,添加3句话

 request.setCharacterEncoding("UTF-8");
 response.setContentType("text/html;charset=utf-8");
 response.setCharacterEncoding("UTF-8");
 

五、将接收到的数据转码

String name = new String(request.getParameter(“name”).getBytes("ISO-8859-1"),"utf-8");
 

六、post提交方式下可进行 URL编码

String info=java.net.URLEncoder.encode(“你好吗.jpg”,”utf-8″);

“张三”,”UTF-8″)%>

String myname=URL decode r.decode(name,”UTF-8″);

欢迎工作一到五年的Java工程师朋友们加入Java技术交流群:659270626

群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、 Jvm 性能调优、Spring源码,MyBatis,Netty,Redis, Kafka , Mysql ,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用”没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

文章来源:智云一二三科技

文章标题:你会解决Spring @RequestParam乱码问题吗?

文章地址:https://www.zhihuclub.com/187685.shtml

关于作者: 智云科技

热门文章

网站地图