- 浏览: 994907 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (394)
- OSGI (14)
- 多线程 (10)
- 数据库 (30)
- J2ME (1)
- JAVA基础知识 (46)
- 引用包 (1)
- 设计模式 (7)
- 工作流 (2)
- Ubuntu (7)
- 搜索引擎 (6)
- QT (2)
- Ubuntu下编程 (1)
- 小程序 (2)
- UML (1)
- Servlet (10)
- spring (16)
- IM (12)
- 文档视频转为flash格式在线播放 (19)
- Maven (8)
- 远程调用 (2)
- PHPRPC (1)
- EXTJS学习 (2)
- Hibernate (16)
- 技术文章 (38)
- flex (5)
- 海量数据处理 (5)
- FTP (8)
- JS (10)
- Struts (1)
- hibernate search (13)
- JQuery (2)
- EMail (3)
- 算法 (4)
- SVN (7)
- JFreeChart (4)
- 面试 (4)
- 正规表达式 (2)
- 数据库性能优化 (10)
- JVM (6)
- Http Session Cookie (7)
- 网络 (12)
- Hadoop (2)
- 性能 (1)
最新评论
-
hy1235366:
能够随便也发一下,你退火算法程序使用的DistanceMatr ...
模拟退火算法总结(含例子)(转) -
梅强强:
感谢分享。。帮大忙了
swftools转换文件时线程堵塞问题的解决方法 -
wenlongsust:
openoffice和文件不在同一个服务器上,用过吗?
[JODConverter]word转pdf心得分享(转) -
2047699523:
如何在java Web项目中开发WebService接口htt ...
利用Java编写简单的WebService实例 -
abingpow:
唉,看起来好像很详细很不错的样子,可惜不是篇面向初学者的文章, ...
Spring与OSGi的整合(二)(转)
经常遇到关于JSP页面乱码的问题,在网上也查了相关的帖子,故在此做个关于JSP页面乱码处理的总结,和大家一同分享。
首先先介绍几个关于页面编码参数设置的属性。
<META http-equiv=Content-Type content="text/html; charset=gb2312">
这句话的意思是你浏览器查看网页的编码方式为中文,类似于浏览器上查看选项的字符编码设置,如果你查看中文的页面,你设置为UTF8查看的话,就会显示为乱码或者说是问号。所以这个属性只是用来设置浏览器显示数据的字符编码。
常用的HTTP-EQUIV类型有: 3。page pageEncoding — 指定JSP解码时所用的编码 阶段三是TOMCAT(或其的application container)加载和执行阶段二得来的JAVA二进制码, 输出的结果( 也就是BROWSER(客户端))
下面我们具体说一下这个属性
META,网页Html语言里Head区重要标签之一
HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容。
Content-Type和Content-Language (显示字符集的设定)
说明:设定页面使用的字符集,用以说明主页制作所使用的文字以及语言,浏览器会根据此来调用相应的字符集显示page内容。
<Meta http-equiv="Content-Type" Content="text/html; Charset=gb2312">
该META标签定义了HTML页面所使用的字符集为GB2132,就是国标汉字码。如果将其中的“charset=GB2312”替换成“BIG5”,则该页面所用的字符集就是繁体中文Big5码。当你浏览一些国外的站点时,IE浏览器会提示你要正确显示该页面需要下载xx语支持。这个功能就是通过读取HTML页面META标签的Content-Type属性而得知需要使用哪种字符集显示该页面的。如果系统里没有装相应的字符集,则IE就提示下载。其他的语言也对应不同的charset,比如日文的字符集是“iso-2022-jp ”,韩文的是“ks_c_5601”。Content-Type的Content还可以是:text/xml等文档类型
Charset选项:ISO-8859-1(英文)、BIG5、UTF-8、SHIFT-Jis、Euc、Koi8-2、us-ascii, x-mac-roman, iso-8859-2, x-mac-ce, iso-2022-jp, x-sjis, x-euc-jp,euc-kr, iso-2022-kr, gb2312, gb_2312-80, x-euc-tw, x-cns11643-1,x-cns11643-2等字符集;Content-Language的Content还可以是:EN、FR等语言代码。
Note:因为我们的浏览器一般都指定为中文字符编码查看,所以这句就不用加在你的页面当中,你加了也可以更强调也好。
2。page contentType — 指定的是JSP页最终 Browser(客户端)所见到的网页内容的编码.其实用在容器中就是说把JSP页面输出为HTML页面采用的编码方式。要把这个与第一个属性有所区别。
如果你的是 WIN98, 或 ME 的NOTEPAD记事本编写JSP, 就一定是常用的是Big5 或 gb2312, 如果是用 WIN2k winXP的NOTEPAD时, SAVE时就可以选择不同的编,码, 包括 ANSI(BIG5/GB2312)或 UTF-8 或 UNIONCODE(估是 UCS 16).
因为 JSP要经过 两次的”编码”,
第一阶段会用 pageEncoding, 第二阶段会用 utf-8 至utf-8, 第三阶段就是由TOMCAT出来的网页, 用的是contentType.
阶段一是 JSPC的 JSP至JAVA(.java)原码的”翻译”, 它会跟据 pageEncoding 的设定读取JSP. 结果是由指定的pageEncoding(utf-8,Big5,gb2312)的JSP 翻译成统一的utf-8 JAVA原码(.java). 如果pageEncoding设定错了, 或没设定(预设ISO8859-1), 出来的 在这个阶段 就已是中文乱码.
阶段二是由 JAVAC的JAVA原码至JAVA BYTECODE的编译. 不论JSP的编写时是用(utf-8,Big5,gb2312),经过阶段一的结果全都是utf-8的ENCODING的JAVA原码.
JAVAC用 utf-8的ENCODING读取AVA原码, 编译成字符串是 utf-8 ENCODING的二进制码(.class). 这是 JAVA VIRTUAL MACNHINE对常数字符串在 二进制码(JAVA BYTECODE)内表达的规范.
见到的. 这时一早隐藏在阶段一和二的参数contentType, 就发挥了功效. (见 阶段一的 ).
4。request.setCharacterEncoding("gb2312")指定对请求采用中文编码发送。浏览器默认的是采取UTF8编码方式发送请求,不能识别中文字符。
5。response.setContentType(”text/html; charset=gb2312″);设置响应时发送数据的编码方式。
总结了一大堆,现在来说下怎么解决JSP页面中文问题
一般性的解决,只要在每个JSP页面开始处加入下面三行代码即可:
为了让JSP编译器能正确地解码我们的含有中文字符的JSP文件
<%@ page pageEncoding="gb2312"%>
保证JSP向客户端输出时是采用中文编码方式输出
<%@ page contentType="text/html;charset=GB2312"%>
为了让JSP能正确获得传入的参数
<%request.setCharacterEncoding("gb2312");%>
对于SERVLET只要在最前面加上这句即可:
为了让JSP响应按照正确的编码格式
response.setContentType(”text/html; charset=gb2312″);
另转:
第一:
1:在jsp页面加入:
<%@ page contentType="text/html; charset=gb2312" %>
2:在servlet里面:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html; charset=gb2312");//这是重要的
3:上面的如果在不行就用如下的方法在数据入库前进行调用:
public static String UnicodeToChinese(String s){ try{ if(s==null ¦ ¦s.equals("")) return ""; String newstring=null; newstring=new String(s.getBytes("ISO8859_1"),"gb2312"); return newstring; } catch(UnsupportedEncodingException e) { return s; } } public static String ChineseToUnicode(String s){ try{ if(s==null ¦ ¦s.equals("")) return ""; String newstring=null; newstring=new String(s.getBytes("gb2312"),"ISO8859_1"); return newstring; } catch(UnsupportedEncodingException e) { return s; } }
这样可以解决JSP中的中文乱码问题. <script type="text/javascript"></script>
发表评论
-
提取html内容放入xml文件时空格问题
2011-05-24 17:09 2592由于项目的需要,将网站上的信息抓取下来,提取出想要的信息,然后 ... -
简述URI和URL区别(转)
2011-04-20 16:23 1369URL:(Uniform Resoure Locato ... -
使用JSTL标签异常
2011-01-02 09:48 1815我使用JSTL标签,如下所示: <c:when ... -
HSQL入门及使用指南 (转)
2010-12-27 22:29 2124HSQL可以到官方网站 ... -
使用POI读取Word207和Excel2007的例子 (转)
2010-12-26 16:19 2574天在写全文检索功能时,POI读取Word2007和Excel2 ... -
SSH session连接关闭问题的解决(转)
2010-12-15 22:12 21002008-07-20 22:25:27,531 INF ... -
svn和myeclipse使用搜狗浏览器代理
2010-12-11 16:42 17821 在svn里的setting功能选项中选择Network,勾 ... -
Kissy Suggest 自动提示例子
2010-12-10 14:45 3776由淘宝团队开发出来的Kissy Suggest 自动提示组件是 ... -
计算机开机启动过程详解(转)
2010-12-10 13:22 13501、http://product.zdnet.com. ... -
更强的自动补全提示:提示补全组件:Kissy Suggest(转)
2010-12-09 16:25 1016去年针对谷歌的搜索提示,发过一篇文章:从谷歌的一个Bug说 ... -
磁盘分区与文件系统(转)
2010-12-09 09:38 2002一个磁盘是分成一个个扇区来存放信息,整个磁盘的第一个扇区是作 ... -
QQ通信原理(转)
2010-12-02 21:52 6621QQ通信原理我研究的是QQ ... -
邮件激活
2010-11-17 09:34 1418今天看了一下公司做的网站,看到有关邮件激活的程序,就做下笔记。 ... -
HttpSessionBindingListener获取在线用户数(转)
2010-11-01 14:59 2325下面为我的测试 ... -
cookie的简单使用
2010-10-29 11:13 1540一、cookie的作用 在 ... -
Cookie工作原理(转)
2010-10-29 09:30 1779Cookies基础 Cookies是 ... -
swfobject的使用
2010-10-26 09:54 31751 swfobject可以将swf文件嵌入到网页内,它是一个j ... -
java获取当前工程名(转)
2010-10-24 09:14 1581String projectname = System.get ... -
利用Java编写简单的WebService实例(转)
2010-10-22 15:30 2705/* * File name: TestHell ... -
利用Java编写简单的WebService实例
2010-10-22 14:55 86954使用Axis编写WebService比较简单,就我 ...
相关推荐
jsp页面向数据库中写入数据,当数据为英文时,可正常写入,当数据为中文时,就会出现乱码。
后来查了网上一些人的解决方案,最彻底的解决办法就是修改jspsmartupload的源码,在upload、download方法处强制指定它的编码格式就可以了。这是修改后的jar包,可以直接拿来用,但在初始化SmartUpload类的时候需要...
本文主要包括以下几个方面:编码基本知识,乱码问题产生原因及问题解决方案
jsp,java中文乱码问题另类解决方案,jni加密、解密编码
讨论了JSP中出现中文问题的起源,并着重从编码角度解释了出现乱码的原因,最后给出了一套整体的中文问题解决方案.
该文档提出了解决jsp开发中常见的汉字编码乱码问题的解决方案,值得参考。
别嫌贵,就是好用,就是任性。自己做项目的时候碰到上传乱码的问题了。然后通过改源码,重新打包。就是这个资源。绝对有效,设置的编码是utf-8
一、有关中文乱码: mysql部分: url配置:jdbc:mysql://localhost:3306/XXX?useUnicode=true&characterEncoding=utf8 jdbc:mysql://localhost:3306/XXX?useUnicode=true&characterEncoding=utf8 创建...
在做java项目(特别是web项目)的过程中,中文乱码一直是我们开发人员比较头疼的问题,因为涉及到编码,解码,字符集,以及国际化等诸多问题,所以在着手解决的时候也缺乏相关的知识。我花了一些时间自己动手实验了...
charset=UTF-8"%> <%@ page pageEncoding="UTF-8" %>1.1 在jsp页面设定字符编码。这边有必有说明的是如果是jsp+java bean+servlet的方案,中文乱码很好解决,统一设成gb2312就可以了。 1.2 使用struts框架字符集不能...
一些常见乱码的解决方案,对一些编码的总结,文字虽少,但能解决问题
在利用Servlet/JSP技术开发java Web应用程序的时候,不可避免的会遇到中文乱码问题,本文首先介绍了Web应用中常用的编码方式,然后分析了J2EE平台下Web应用中文乱码问题产生的原因,并在此基础上针对不同情况提出了解决...
在进行java Web开发的过程中,由于采用的编码和解码的方式不统一,...文中首先介绍了java Web的编码机制及JSP运行原理,继而阐述了在开发过程中常见的乱码问题及解决方案,最后提出采用过滤器重写getParameter方法,实现...
解决:delete.action?title=()%>传到action类出现乱码的问题
主要是数据库方面的编码修改,jsp还有tomcat中的修改很简单,这里不做赘述了。
在利用JSP/Servlet技术开发java Web应用程序的时候,经常会遇到中文乱码问题,本文首先介绍了Web应用中常见的编码方式,然后分析了J2EE平台下Web应用中文乱码产生的原因,并针对不同情况给出了解决方法。
当通过JSP页面,向数据库中插入记录的时候,可能因为JSP页面编码原因,导致插入到数据库中的新纪录出现乱码。因此需要对JSP页面中的内容进行编码操作,从而保证与数据库中的编码一致。 解决方案 使用JSP中过滤器...
项目进行到和服务器交互,通过post访问服务器端jsp,jsp访问服务器端mysql数据库,最终返回到客户端的中文出现乱码问题。 在整个流程中,出现错误的原因可能是三个:post未设置编码或者编码不相符合,jdbc出现问题,...
当我们在学习JSP开发时,中文乱码是个比较常见的问题,其根源是:Web容器默认的字符处理编码是ISO-8859-1。下面我们来详细看看如何去解决这个问题。