`

服务器后台servlet返回的数据乱码或者是一串问号,快速解决

 
阅读更多

首先,response返回有两种,一种是字节流outputstream,一种是字符流printwrite。

申明:这里为了方便起见,所有输出都统一用UTF-8编码。

先说字节流,要输出“中国",给输出流的必须是转换为utf-8的“中国”,还要告诉浏览器,用utf8来解析数据

 

[html] view plain copy
 
 
  1.        //这句话的意思,是让浏览器用utf8来解析返回的数据  
  2.         response.setHeader("Content-type", "text/html;charset=UTF-8");  
  3.         String data = "中国";  
  4.         OutputStream ps = response.getOutputStream();  
  5.         //这句话的意思,使得放入流的数据是utf8格式  
  6.         ps.write(data.getBytes("UTF-8"));  



 

再说字符流,要输出中国,需要设置response.setCharacterEncoding("UTF-8");

 

[html] view plain copy
 
 
  1.              //这句话的意思,是让浏览器用utf8来解析返回的数据  
  2. response.setHeader("Content-type", "text/html;charset=UTF-8");  
  3. //这句话的意思,是告诉servlet用UTF-8转码,而不是用默认的ISO8859  
  4. response.setCharacterEncoding("UTF-8");  
  5. String data = "中国";  
  6. PrintWriter pw = response.getWriter();  
  7. pw.write(data);  

 

 

 

经验:1,如果中文返回出现??字符,这表明没有加response.setCharacterEncoding("UTF-8");这句话。

            2,如果返回的中文是“烇湫”这种乱码,说明浏览器的解析问题,应该检查下是否忘加response.setHeader("Content-type", "text/html;charset=UTF-8");这句话。

 

如果上面都解决不了,请看更详细的说明

http://blog.csdn.net/kontrol/article/details/7767983

分享到:
评论

相关推荐

    servlet乱码及解决

    这是servlet出现乱码,以及乱码出现时的解决办法。

    servlet输出JS乱码问题

    知识点:Servlet输出JS乱码问题解析与解决方案 一、Servlet与JS输出背景 Servlet是Java Web应用中的核心组件,主要用于处理客户端发送的HTTP请求,并生成响应。在Web开发中,Servlet经常被用来处理业务逻辑,然后...

    jsp+servlet+mysql乱码解决的这天

    jsp+servlet+mysql乱码解决方案 jsp+servlet+mysql乱码解决方案是指在使用jsp+servlet+mysql...jsp+servlet+mysql乱码解决方案是一个非常重要和实用的解决方案,对于jsp+servlet+mysql开发的web应用程序非常有价值。

    tomcat与servlet乱码解决办法

    2. **响应数据的乱码**:服务器端返回给客户端的数据若编码设置不当,也会出现乱码问题。 ##### 3.2 解决方法 1. **设置请求的字符编码**:使用`request.setCharacterEncoding("UTF-8")`来指定请求参数的编码格式。...

    servlet中文乱码问题

    ### Servlet + Tomcat 中文乱码问题解析及解决方案 #### 一、中文乱码问题概述 在使用Servlet和Tomcat进行Web开发时,经常会遇到中文乱码的问题。这主要是因为客户端(如浏览器)与服务器之间使用的字符编码不一致...

    安卓开发后台servlet接受数据

    在安卓应用开发中,与服务器进行数据交互是一个关键环节,特别是在构建动态、实时的应用时。这里我们关注的是安卓前端如何通过HTTP GET请求与后台的Servlet进行数据交换,以及Servlet如何以JSON格式返回信息。让我们...

    servlet中解决乱码

    本文将深入探讨如何在Servlet中解决乱码问题,确保数据正确无误地进行编码和解码。 首先,我们需要了解Java Servlet生命周期中的两个关键阶段:`service()`方法和`doGet()`或`doPost()`方法。在这些方法中,我们...

    解决servlet页面乱码问题

    本文将深入探讨如何解决Servlet页面显示乱码的问题,这对于初学者来说是至关重要的知识点。 首先,我们需要理解乱码的根源。在Web应用中,乱码通常出现在两个阶段:输入(如POST表单数据)和输出(如HTML页面的响应...

    servlet输出中文乱码问题

    2. **响应头Content-Type设置问题**:服务器响应给客户端的数据应该包含一个`Content-Type`头来指定字符集,如果未正确设置或者设置的字符集与实际使用的字符集不一致,也会导致乱码。 3. **请求参数编码问题**:...

    servlet过滤器解决乱码问题

    ### Servlet过滤器解决乱码问题 在Web应用开发过程中,字符编码问题经常出现,尤其是在处理中文等多字节字符时。如果不正确地设置字符编码,可能会导致页面显示乱码。本文将详细介绍如何通过Servlet过滤器来解决这...

    jsp传参 servlet接收中文乱码问题的解决方法.docx

    jsp 传参 servlet 接收中文乱码问题的解决方法 jsp 传参 servlet 接收中文乱码问题是一个经常遇到的问题,特别是在使用 Hibernate+Servlet 框架时。当我们在 jsp 页面传参到 servlet 时,中文字符经常会出现乱码...

    ajax到servlet乱码解决

    AJAX 到 Servlet 乱码解决方案 在 Web 开发中,使用 AJAX 通过 URL 传参数给 Servlet 时,经常会遇到乱码问题,即使使用了统一的字符编码也没用。下面我们来探讨这个问题的解决方案。 问题描述 当我们使用 AJAX ...

    Servlet 中文乱码问题

    在Java的Servlet开发中,中文乱码问题是一个常见的困扰,主要涉及到请求(request)和响应(response)两个方面。本文将详细解析这两个方面的乱码问题及其解决方案。 首先,我们需要了解一些基础知识。GBK编码是一种...

    javaweb servlet(jsp)的乱码问题原理及解决

    ### javaweb servlet(jsp)的乱码问题原理及解决 #### HTTP协议的基本理解与乱码问题背景 HTTP协议作为互联网应用中最为广泛使用的通信协议之一,它定义了客户端和服务端之间的交互规则。HTTP请求主要分为GET和...

    servlet与jsp中文乱码处理

    然而,在处理中文字符时,由于编码不一致或者处理不当,可能会出现中文乱码问题。这个问题困扰了很多开发者,但通过了解编码原理和采用正确的方法,可以有效地解决。下面将详细阐述servlet和jsp中文乱码的处理方式。...

    打印报表调用后台servlet出库数据-项目

    标题 "打印报表调用后台servlet出库数据-项目" 描述的是一个涉及到Web应用程序开发中的功能实现,其中包含了前端用户界面与后端服务器端逻辑的交互。在这个项目中,前端可能通过一个JSP(JavaServer Pages)页面,如...

    extjs 前后台交互参数出现中文乱码问题的解决方法

    ### extjs前后台交互参数出现中文乱码问题的解决方法 #### 问题背景与原因分析 在使用MyEclipse开发工具进行Web应用开发时,尤其是采用ExtJS框架结合Ajax技术进行前后端数据交互的过程中,可能会遇到一个常见的...

    javaIDEA新手研究的ajax访问servlet,html获取后台数据

    4. **响应数据**:Servlet处理完请求后,可以通过`response.getWriter().write()`或`response.getOutputStream().write()`将数据以JSON、XML或其他格式返回给前端。 5. **JavaScript处理响应**:Ajax请求的回调函数...

    一个支持servlet的web服务器.rar

    这个压缩包“一个支持servlet的web服务器.rar”很可能包含了实现这一功能的源代码、配置文件或者是一个预编译好的服务器软件,允许开发者在本地环境中运行和测试Servlet应用。下面我们将深入探讨Servlet以及如何在...

    java中文乱码解决问题

    在 Servlet/JSP 程序中,通过请求对象的 getParameter() 方法得到的字符串是以 ISO-8859-1 转换而来,这是导致乱码产生的原因之一。为了避免容器以 ISO-8859-1 的编码方式返回字符串,可以在获取请求参数值之前,...

Global site tag (gtag.js) - Google Analytics