欢迎来到天天文库
浏览记录
ID:45919273
大小:61.56 KB
页数:3页
时间:2019-11-19
《J2EE SQL Server中文乱码问题解读方法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、J2EESQLServer中文乱码问题解读方法 J2EE带动了Java在企业级的发展但随着一些轻量级组件的出现J2EE的臃肿和开发难度高的缺点越来越引起了许多人的注意EJB2.0也被许多人称为累赘下面是小编整理的关于J2EESQLServer中文乱码问题解读方法欢迎大家参考 一、Java中文问题的由来 Java的内核和class文件是基于unicode的这使Java程序具有良好的跨平台性但也带来了一些中文乱码问题的麻烦原因主要有两方面Java和JSP文件本身编译时产生的乱码问题和J
2、ava程序于其他媒介交互产生的乱码问题 首先Java(包括JSP)源文件中很可能包含有中文而Java和JSP源文件的保存方式是基于字节流的如果Java和JSP编译成class文件过程中使用的编码方式与源文件的编码不一致就会出现乱码基于这种乱码建议在Java文件中尽量不要写中文(注释部分不参与编译写中文没关系)如果必须写的话尽量手动带参数ecodingGBK或ecodinggb2312编译;对于JSP在文件头加上<%@pagecontentType=text/html;charset=GBK%>
3、或<%@pagecontentType=text/html;charset=gb2312%>基本上就能解决这类乱码问题 本文要重点讨论的是第二类乱码即Java程序与其他存储媒介交互时产生的乱码很多存储媒介如数据库文件流等的存储方式都是基于字节流的Java程序与这些媒介交互时就会发生字符(char)与字节(byte)之间的转换例如从页面提交表单中提交的数据在Java程序里显示乱码等情况 如果在以上转换过程中使用的编码方式与字节原有的编码不一致很可能就会出现乱码 二、解决方法 对
4、于流行的Tomcat来说有以下两种解决方法: 1)更改D:Tomcatconfserver.xml指定浏览器的编码格式为“简体中文”: 方法是找到server.xml中的 enableLookups=falseredirectPort=8443acceptCount=100 connectionTimeout=20000disableUploadTimeout=trueURIEncoding='GBK'/> 标记粗体字是我添加的 可以这样验证你的更改
5、是否成功:在更改前在你出现乱码的页面的IE浏览器点击菜单“查看
6、编码”会发现“西欧(ISO)”处于选中状态而更改后点击菜单“查看
7、编码”会发现“简体中文(GB2312)”处于选中状态 b)更该Java程序我的程序是这样的: publicclassThreeParamsextendsHttpServlet{ publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletEx
8、ception,IOException{ response.setContentType(text/html;charset=GBK); ... } } 粗体字是必需要有的它的作用是让浏览器把Unicode字符转换为GBK字符这样页面的内容和浏览器的显示模式都设成了GBK就不会乱码了
此文档下载收益归作者所有