- 浏览: 1159152 次
- 性别:
- 来自: nibiru
文章分类
- 全部博客 (407)
- lucene (1)
- java (147)
- j2se (1)
- javascript (2)
- spring (5)
- hibernate (1)
- mysql (1)
- oracle (10)
- 工作 (10)
- JPA (13)
- 网站 (5)
- xml (2)
- mina (3)
- 思想 (16)
- httpclient (10)
- JFreeChart (1)
- 多线程 (0)
- swing (2)
- socket (0)
- 网络 (3)
- protocol buffer (0)
- jmx (2)
- jboss/weblogic (1)
- flex3 (12)
- 设计模式 (1)
- apache (0)
- php (4)
- struts1&2 (2)
- oracle SOA (2)
- 微博短链接的生成算法(Java版本) (1)
- htmlparser (3)
- quartz (2)
- mail (1)
- 乱码 (2)
- txt (1)
- eclipse (7)
- 分类 (0)
- 数据库 (1)
- svn (1)
- 日志 (1)
- struts2 (4)
- jquery (2)
- 编码 (1)
- 路径,java (1)
- SOHO (1)
- 娱乐 (2)
- frameset (1)
- maven (1)
- 反射 (1)
- truts2 (1)
- 敏捷,scrum (1)
- OA (1)
- english (1)
- oralce (1)
- wampserver (1)
- 会计 (1)
- springmvc (1)
- js (1)
- CMA (1)
最新评论
-
ludabing:
[/color][color=yellow]
spring @component的作用 -
netwelfare:
EL表达式中null和empty的区别,可以看这篇文章:htt ...
EL表达式中empty的用法 -
wjs王结胜:
...
spring @component的作用 -
di1984HIT:
哈哈。真不错啊。~
微博短链接的生成算法(Java版本) -
di1984HIT:
不错,不错。。。
spring @component的作用
大家都知道,计算机只认识二进制的数字, 那么所谓各种字符的编码,其实就是对二进制数据的某种约定。如,ASCL、ISO8859-1、GBK、Unicode、UTF-8。而乱码的产生就是在不同字符集转换的过程中出现的。比如在java中,内部使用的是Unicode编码,当JVM读取到中文时,它把GBK转化成Unicode进行处理,处理完输出时,再转化成GBK,读与写这两个过程是可逆的,按理不会产生乱码。但实际应用的情况就比较复杂,在WEB应用中,包括了浏览器,服务器,应用程序,数据库等等,它们之间的编码可能各不相同,没有一个合理的转换机制,乱码就产生了。下面就几种常见乱码问题做一下总结:
一、表单提交乱码:表单提交的默认字符串是以ISO-8859-1转化来的,ISO-8859-1不支持中文,由于找不到相应的编码,就会产生乱码。解决的办法可以在提交参数前调用request.setCharacterEncoding("UTF-8”)。
二、输出中文时出现乱码:解决此问题可以在输入内容前加调用response.settCharacterEncoding("UTF-8”)。因引解决上述两各乱码问题,最好是写个过器,过滤器代码如下:
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
public class CodeFilter extends HttpServlet implements Filter {
private FilterConfig filterConfig;
//Handle the passed-in FilterConfig
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
}
//Process the request/response pair
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) {
try {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
filterChain.doFilter(request, response);
} catch (ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
} catch (IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
}
//Clean up resources
public void destroy() {
}
}
在Web.xml的<web-app></web-app>中加入如下代码:
<filter>
<filter-name>codeFilter</filter-name>
<filter-class>filter.CodeFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>codeFilter</filter-name>
<url-pattern>*.*</url-pattern>
</filter-mapping>
三、地址栏中传中文乱码的问题:例如a.jsp?name=”张三”。解决此问题需要做两点:
a.在传参数之前先把参数进行转码:java.net.URLEncoder.encode(name);在取值时用java.net.URLDncoder.dncode(name);再转回中文。
b.在Tomcat目录àconf目录àserver.xml里找到:(我的是Tomcat6.0)
<Connector port="8080" protocol="HTTP/1.1"
maxThreads="150" connectionTimeout="20000"
redirectPort="8443" <!—在里边加上这个参数---> URIEncoding=”utf-8”/>
四、如果前几各方法没有效果,不防试试这个:String name=new String(request.getParameter(“name”).getBytes(“ISO-8859-1”),”UTF-8”);
五、往磁盘上写文件时, 由于写入时默认是本机编码,虽然所取到的值是UTF-8编码,但写入时依然按本机编码。解决方法:
FileOutputStream fileoutputstream = new FileOutputStream(“文件名”);
DataOutputStream dos = new DataOutputStream(fileoutputstream);
dos.writeUTF(“内容”);
os.close();
六、往数据库写入时出现乱码,解决办法:首先确定你在插入数据库之前是中文 ,然后在数据库连接字串(URL)后加上useUnicode=true&characterEncoding=utf-8
以上属于个人总结,希望各位多提宝贵意见!
发表评论
-
DISCUE盖楼器
2013-10-24 13:34 1222package com.soft.hr.per.service ... -
svn文件影响编译速度解决办法
2011-11-05 10:06 1677在eclipse开发环境中正常编译java文件时,eclip ... -
项目经理,产品经理,架构师
2011-08-29 12:54 2022理想:产品经理设计出简单好用的产品,并能理解技术约束和 ... -
题目
2011-08-28 13:01 17内容22222222222222222222222222222 ... -
如何用QTP录制鼠标右键点击事件
2011-08-25 17:09 1667qtp录制鼠标右键单击事件要通过模拟键盘操作来实现st ... -
Eclipse中要导出jar包中引用了第三方jar包怎么办【】
2011-08-25 15:17 3576单击菜单栏中 ... -
面试题整理2
2011-08-25 12:13 709现有n个人和m个桌子.当每桌做3个人时,多出来2个人. ... -
java把下载html批量换成chm电子书
2011-08-25 10:11 1367利用微软的hhc.exe来把需要转换成chm的htm ... -
java用链表解约瑟夫环问题
2011-08-25 09:36 10721到20的数围成一个圈,隔两个取出一个,直到所有的数都 ... -
CKEditor用法
2011-08-25 09:23 1499config.js ckeditor.editor ... -
工作难题
2011-08-24 15:00 1143function showitem(oid,order ... -
Rational.Rose7.0系统软件
2011-08-24 14:13 3043ibm.rational.rose7.0系统软件01. ... -
[] 探索建立私人的科技资料检索系统
2011-08-23 10:42 1335由于经济条 ... -
一、Java字节代码的操纵
2011-08-22 14:54 624<address style="tex ... -
线程状态的换
2011-08-22 13:09 996<div><div>scjp5 ... -
线程的调度—优先级
2011-08-22 12:53 1143<div>与线程休眠类似,线程的优先级仍然 ... -
类 Hibernate Session DBUtil
2011-08-22 12:16 1236package com.core.util;impor ... -
利用Annotation构建针对POJO进行增删改操作
2011-08-22 12:12 1142package com.core.annotation ... -
360 Or QQ
2011-08-22 08:48 1168前几天,360忽然跳 ... -
XML JAVA解析 -- DOM
2011-08-19 14:27 1326dom : document object model ...
相关推荐
### JSP乱码问题解决 #### 一、JSP页面显示乱码 在JSP页面开发过程中,中文乱码是一个常见的问题。这个问题主要是由于服务器端和客户端(浏览器)的编码设置不一致导致的。 **原因分析:** 1. **服务器编码设置...
### jsp乱码解决方案 #### 一、引言 在Web开发中,特别是使用Java Server Pages (JSP)进行开发时,字符编码问题是一个经常遇到的技术难题。如果处理不当,很容易导致网页显示乱码,影响用户体验及数据的正确性。...
在IT行业中,尤其是在Web开发领域,JSP(JavaServer Pages)是常见的动态网页技术,而中文乱码问题一直是开发者们经常遇到的困扰。本篇文章将深入探讨JSP中文乱码问题的原因、解决策略以及预防措施。 一、乱码产生...
本文将深入探讨JSP乱码的原因及其解决方案,帮助开发者有效地处理这类问题。 ### 1. JSP乱码的成因 - **字符集设置不一致**:JSP文件、HTML页面、HTTP头、Servlet输出以及数据库存储等环节的字符集设置不一致,...
### JSP Eclipse 乱码问题解析与解决方案 在开发基于Java的Web应用时,经常会遇到JSP页面在Eclipse环境中出现乱码的情况。这不仅会影响程序的正常运行,还可能导致用户体验下降。本文将针对JSP在Eclipse中的乱码...
总结来说,解决JSP中文乱码问题的关键在于:明确JSP文件的编码,正确设置HTTP请求的解码,以及统一响应内容和数据库的字符集。同时,要注意在每个可能产生编码转换的环节都要进行适当的检查和配置,以确保数据的完整...
### jsp页面提交乱码问题解析 #### 一、乱码问题概述 在进行Web开发时,特别是使用Java Server Pages (JSP)技术时,经常会遇到表单提交数据出现乱码的问题。这个问题主要出现在从客户端(如浏览器)提交的数据到...
### 解决JSP提交乱码的问题 在进行Web开发时,经常会遇到中文字符编码的问题,尤其是在使用JavaServer Pages(JSP)技术时。本篇文章将详细介绍如何解决JSP页面提交时出现的乱码问题,包括GET请求和POST请求两种...
JSP乱码问题主要由字符编码不一致引起,通过统一和正确地设置各个环节的编码,可以有效避免这类问题。对于具体的项目,需要根据实际情况分析乱码产生的环节,并针对性地调整相关配置。提供的解决方案涵盖了常见的...
总结起来,解决Servlet和JSP中的乱码问题,关键在于正确设置请求和响应的字符编码,并确保整个开发环境和部署环境的一致性。对于复杂的项目,使用过滤器可以提供更统一和灵活的解决方案。通过理解字符编码的基本原理...
Java开发乱码问题解决方法汇总 ...Java开发乱码问题解决方法汇总中,我们总结了七种常见的解决方法。这些方法可以帮助读者避免乱码问题的发生。如果读者在实际开发中遇到乱码问题,可以尝试使用这些方法来解决问题。
### Servlet及JSP解决中文乱码问题 #### 一、引言 在Web开发中,中文乱码问题一直是困扰开发者的一大难题。特别是在使用Java技术栈(如Servlet与JSP)进行开发时,如果处理不当,很容易出现中文字符显示乱码的情况...
### JSP中文乱码问题完全解决方案 #### 一、引言 在JSP开发过程中,中文乱码问题一直是困扰开发者的一大难题。由于JSP页面、请求参数等涉及到多种编码方式,如Unicode、GB2312、GBK以及UTF-8等,如果不进行适当的...
### JSP乱码问题及其解决方法 #### 一、引言 在进行Java Web开发时,经常遇到的一个问题是页面字符编码出现乱码的情况。虽然这看似是一个小问题,但如果处理不当,会对用户体验甚至整个项目的质量产生严重影响。...
### 解决JSP+Servlet开发中的中文乱码问题 #### 概述 在基于JSP(Java Server Pages)和Servlet技术的Java Web应用开发过程中,中文乱码问题一直是困扰开发者的一大难题。由于Java Web应用程序涉及多个组件之间的...
【JSP乱码处理综合】 在开发Java Server Pages (JSP) 应用程序时,中文乱码问题是一个常见的困扰。以下是对这个问题的详细解析和解决方案: 一、JSP页面显示乱码 当JSP页面中的中文无法正常显示时,这通常是因为...
中文乱码问题是 Java 和 JSP 开发中的一种常见问题,主要是由于 Java 和 JSP 源文件的保存方式是基于字节流的,而编译成 class 文件过程中,使用的编码方式与源文件的编码不一致所致。在 Java 文件中,尽量不要写...
总结来说,解决JSP中文乱码问题的关键在于理解不同环节的字符集设置,并确保它们之间的一致性。从源文件的编码到页面显示、HTTP交互、数据库操作以及文件读写,每个环节都需要正确设置字符集,以确保中文字符能够...
### JSP中文乱码问题解析 #### 一、引言 在进行Web开发时,特别是使用Java Server Pages(JSP)技术,经常会遇到中文显示乱码的问题。这不仅影响用户体验,也增加了开发与调试的复杂度。本文将针对常见的JSP中文...