java前后端开发中乱码问题

JSP页面中避免乱码:

<%@ page language="java" contentType="text/html;charset=utf-8"
    pageEncoding="UTF-8"%>

html页面中避免乱码:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

含有Spring框架的web工程中乱码解决:在web.xml中配置

<!--中文乱码处理  -->
    <filter>
        <filter-name>encodingFilter </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>forceEncoding </param-name>
                <param-value>true </param-value>
            </init-param>
</filter>

仅仅对post请求有效,若需要解决get请求乱码,还需要去Tomcat目录,conf文件夹下的server.xml

打开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" />这样就可以解决get请求乱码问题

servlet中乱码问题

get请求这样解决:

String  args = request.getParameter("args");

String str = new String(args.getBytes("ISO-8859-1"),"utf-8")

post请求这样解决:

request. setCharacterEncoding(“UTF-8”);

在响应中乱码解决:

response.setContentType(“text/html;charset=utf-8”);

response. setCharacterEncoding(“UTF-8”);




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值