中文乱码问题

一、JAVA

解决java控制台中文乱码问题

第一步
1:打开intelliidea安装路径,IntelliJIDEA15.0.6\bin找到idea.exe.vmoption文件,打开,在最后一行填加:“-Dfile.encoding=utf-8”,如图所示,保存。
在这里插入图片描述
第二步
2:设置idea file编码。在菜单栏找到”File->settings->搜索File Encodeing” 设置utf-8。如图所示
在这里插入图片描述

第三步
3:在菜单栏找到HELP->Edit Custom VM OPtions中加 -Dfile.encoding=utf-8
在这里插入图片描述

第四步
4:设置idea server编码。在菜单栏找到”run->editconfigration” 找到”server”选项卡 设置 vm option为 -Dfile.encoding=utf-8

在这里插入图片描述

二、Tomcat

解决Tomcat服务器在DOS命令窗口中的乱码问题(控制台乱码)

将CATALINA_HOME/conf/logging.properties文件中的内容修改如下:

java.util.logging.ConsoleHandler.encoding = GBK

处理POST请求的乱码问题

Tomcat9前(包括9在内),如果前端请求体提交的是中文,后端获取之后出现乱码,怎么解决这个乱码?执行以下代码。
设置请求体的字符集。(显然这个方法是处理POST请求的乱码问题。这种方式并不能解决get请求的乱码问题。)

request.setCharacterEncoding("UTF-8");

// Tomcat10之后,request请求体当中的字符集默认就是UTF-8,不需要设置字符集,不会出现乱码问题。

在Tomcat9之前(包括9),响应中文也是有乱码的,怎么解决这个响应的乱码?

response.setContentType("text/html;charset=UTF-8");
// 在Tomcat10之后,包括10在内,响应中文的时候就不在出现乱码问题了。以上代码就不需要设置UTF-8了。

get请求乱码问题怎么解决?

// get请求发送的时候,数据是在请求行上提交的,不是在请求体当中提交的。

// 方案:修改CATALINA_HOME/conf/server.xml配置文件

<Connector URIEncoding="UTF-8" />
//注意:从Tomcat8之后,URIEncoding的默认值就是UTF-8,所以GET请求也没有乱码问题了

利用jsp处理响应时中文乱码问题

JSP的page指令解决响应时的中文乱码问题:

  • 通过page指令来设置响应的内容类型,在内容类型的最后面添加:charset=UTF-8
    • <%@page contentType="text/html;charset=UTF-8"%>,表示响应的内容类型是text/html,采用的字符集UTF-8

利用过滤器解决中文乱码问题

在web.xml文件中配置<filiter>

<filter>
        <filter-name>characterEncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>utf-8</param-value>
    </init-param>
        <init-param>
            <param-name>forceRequestEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <param-name>forceResponseEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值