关闭

Servlet 中文乱码的避免

标签: servlet乱码
419人阅读 评论(0) 收藏 举报
分类:
package com.pythoncat.web.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LServlet extends HttpServlet {

    /**
     * 演示避免中文乱码的情况(UTF-8)
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        //1. 中文乱码的根源:
        /**
         * <pre>
         *     首先,这是一个忧伤的故事。
         *     在服务器端,进行响应的时候,会将任何的字符串通过默认的编码转自字节数组,以便计算机能够识别。
         * 而tomcat默认的编码方式是iso8859-1。但是,事实上呢,iso8859-1本身不支持中文字符串的编码与解码
         * 这样一来,中文必然是乱码。
         *       那么,为了改变这一状况。我们指定服务器这边响应的编码与解码方式为UTF-8.这样一来,至少,服务器
         * 这边呢,在编码与解码的时候,不会产生乱码了。
         *       但是,这并没有避免乱码的出现。(在客户端的出现),因为,大部分浏览器,在中国大陆,使用的字符串的
         * 默认解码/编码方式为GBK。这样一来,utf-8转换的字节数组,通过gbk去解码,依然是个乱码。
         *     那么,我们就得让浏览器也使用utf-8去解码。怎么做呢?就是设置一个特殊的响应头,告诉浏览器,我的
         * 编码方式,让浏览器使用相同的方式去解码,这样就顺利解决了中文的乱码情况。
         * </pre>
         */
        response.setContentType("text/html;charset=utf-8");
        //这一句就是将自己设置成UTF-8编码,并作为响应头告诉浏览器我使用的编码方式!
        response.getWriter().print("我是中文,你奈我何?");
    }

}
0
0
查看评论

servlet中文一般乱码问题结解决方式总结

出现中文乱码的问题有很多,以前在学习php的时候乱码的问题近乎没有多少,php在这方面还是处理的比较好的,但在javaee的servlet中中文乱码的问题比较好,而出现的原因也比较多,下面做一下简单的总结: 按照数据传送的方式我分为了两类:POST和GET传送数据,当然了还有其它的传输方式,但是这...
  • MyCodeDream
  • MyCodeDream
  • 2015-08-31 21:01
  • 3004

Servlet中文乱码原因 解决 Get 和 Post 和客户端

一、Get方式的中文乱码1) 使用如下页面表单内容: <form action="http://127.0.0.1:8080/day07/params" method="get"> 用户名:<input name=&quo...
  • lxf512666
  • lxf512666
  • 2016-10-26 23:14
  • 4261

关于Servlet中前后台交互中文乱码问题的解决

在servlet前后台交互时,我们会经常遇到中文乱码的问题,以后是我总结的解决方式: 一、交互过程中,参数乱码的解决:    1.  如果请求方式是“get”: String userName= request.getParameter("us...
  • BeauXie
  • BeauXie
  • 2016-08-24 14:55
  • 3765

Servlet中文乱码处理

Servlet中文乱码处理 发生中文乱码的原因 发生中文乱码的各种情况 1、表单form (1)post    在服务器端设置成浏览器端的编码方式。 解决方法:  request.setCharacterEnc...
  • q547550831
  • q547550831
  • 2016-01-01 18:41
  • 1899

jsp数据提交至servlet中文乱码

【出现乱码的原因】         首先无论使用get方式提交,还是post方式提交,如果参数中包含中文,浏览器都会使用当前浏览器编码对其进行URL编码,然后服务器端再进行URL解码,如果浏览器提交数据的编码和服务器接收数据的编码格式...
  • u013795673
  • u013795673
  • 2016-08-24 15:37
  • 2752

JSP或servlet中(以及上传下载文件)中文乱码或不显示的解决方案

JSP或servlet中中文乱码的解决方案: 1.以POST请求方式: 在获取请求参数之前设置: request.setCharacterEncoding("utf-8"); 设置输出编码: response.setContentType("text/html;char...
  • xby1993
  • xby1993
  • 2014-04-14 14:33
  • 2588

[error handle][servlet]转发导致的中文乱码

REASON写了一个表单页面webBasic.jsp,信息提交到Servlet,然后读取数据库信息转发到webBasic.jsp。ERROR输出的汉字变为了乱码。连jsp本身的内容,原先正常的也变成了乱码。 主要代码和效果截图如下: Servlet代码: Jsp代码: 提交前界面: ...
  • xia4820723
  • xia4820723
  • 2015-09-24 15:20
  • 778

Servlet中文乱码解决方案详解

中文乱码问题一直是web开发中让人头痛的问题,但是好在掌握原理后,解决的方案很简单,一般情况下发生在servlet开发中无外乎request和response乱码问题,下面是一个讲的比较好的博文链接,在此可以解决你可能遇到的几乎全部的问题。         h...
  • songdeitao
  • songdeitao
  • 2013-12-26 10:36
  • 2522

java servlet 接收中文乱码

private FilterConfig filterConfig; public void init(FilterConfig filterConfig) throws ServletException { // Put your code here this.filterConfi...
  • ying890
  • ying890
  • 2014-10-02 14:35
  • 638

springmvc controller和servlet中文乱码问题

http://tydldd.iteye.com/blog/2071869 springmvc controller和servlet中文乱码问题 博客分类:  javaweb   一、第一种方法通过tomcat配置和spring编码过滤器解...
  • beyondlpf
  • beyondlpf
  • 2017-03-14 14:37
  • 479
    个人资料
    • 访问:163705次
    • 积分:3396
    • 等级:
    • 排名:第11707名
    • 原创:177篇
    • 转载:3篇
    • 译文:2篇
    • 评论:36条
    最新评论