SSM项目,常见乱码解决办法

来源:互联网 发布:用友数据库重装 编辑:程序博客网 时间:2024/06/05 22:57

常见乱码问题解决办法:(这是我遇到过的)
1.解决post请求乱码(全站乱码过滤器)
2.解决get请求乱码(手动)
3.tomcat的编码问题
4.response响应乱码
5.maven项目打包后发布项目乱码

1.
在你项目的WEB-INF下的web.xml文件中添加一个全站乱码过滤器,– Spring框架中有这个过滤器,直接,类似下面 ,引入即可

    <?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns="http://java.sun.com/xml/ns/javaee"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"    version="2.5" >  <display-name>maven...省略</display-name>  <!-- 省略 -->    <!-- 编码过滤器,以UTF8编码 -->    <filter>        <filter-name>encodingFilter</filter-name>        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>        <init-param>            <param-name>encoding</param-name>            <param-value>UTF8</param-value>        </init-param>    </filter>    <filter-mapping>        <filter-name>encodingFilter</filter-name>        <url-pattern>/*</url-pattern>    </filter-mapping>    <!-- 省略 --></web-app>

2.

设置对客户端请求进行重新编码的编码
httpServletRequest.setCharacterEncoding(“UTF-8”);

3.
tomcat默认编码是ISO8859-1
改为utf-8即可
找到你的tomcat目录下的conf目录下的server.xml
用记事本或者其他文本编辑器打开

找到类似下面的代码,

    <Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" />

加上
URIEncoding=”UTF-8”
即可
添加后如下:

    <Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" URIEncoding="UTF-8" />

4.
reponse响应到前端乱码,设置下编码
下面给出一个例子:

            Map resultMap = new HashMap();            resultMap.put("content","ERROR");            resultMap.put("status", -1);            resultMap.put("msg","------账户不存在,请检查是否绑定支付宝账号!------");            //指定对服务器响应进行重新编码的编码            httpServletResponse.setCharacterEncoding("UTF-8");            //设置响应头                                     httpServletResponse.setHeader("Content-type", "text/html;charset=UTF-8");                   httpServletResponse.getWriter().write(JSON.toJSONString(resultMap));            return;

5.
如果是maven项目,你打包的时候一定要注意pom文件的编码
打开pom文件
在里面设置

列子:
<!-- 此处及以上省略-->  ......     <url>http://maven.apache.org</url>    <properties>    <!-- 主要是设置编译时的编码 -->      <!-- 文件拷贝时的编码 -->          <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>          <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>          <!-- 编译时的编码 -->          <maven.compiler.encoding>UTF-8</maven.compiler.encoding>      <!-- 此处及以下省略-->  ......    </properties>
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 三维空间和四维空间 教学三维目标 性动态三维立体图加音 三维鱼肝油乳 三维通信股吧 三维彩超四维 三维数字化仪 三维家和酷家乐哪个好 三维制霉素栓 三维立体地球仪图 三维图片挑战眼力 三维设计软件 三维和四维区别 三维还是四维排除畸形哪个好 三维是什么意思 立体 e都市 三萎 图片立体 地球月球太阳三维动画 为啥说三缸车必死 2019新凌派三缸发动机就是垃圾 英朗三缸为啥也销量那么好 三缸车能买吗 三缸机到底能不能买 三缸发动机 三缸车 三缸机 2019三缸发动机质量排名 三缸发动机寿命 三缸发动机能买吗 三缸机优缺点 福睿斯2019三缸建议入手吗 三缸 发动机三缸好还是四缸好 18款英朗三缸有什么缺点 三缸机和四缸机 汽车三缸好还是四缸好 吉利三缸发动机怎么样 奇瑞三缸发动机