千家信息网

JSP虚拟主机使用中的乱码问题有哪些

发表于:2024-11-25 作者:千家信息网编辑
千家信息网最后更新 2024年11月25日,这篇文章将为大家详细讲解有关JSP虚拟主机使用中的乱码问题有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1 POST提交表单是乱码常见的情况为:页面都正常,但
千家信息网最后更新 2024年11月25日JSP虚拟主机使用中的乱码问题有哪些

这篇文章将为大家详细讲解有关JSP虚拟主机使用中的乱码问题有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1 POST提交表单是乱码

常见的情况为:页面都正常,但新插入的数据全是乱码.

这种情况,就是因为提交的数据被程序接收后就是乱码,这个乱码又插入数据库了,所以显示不正常

解决方案:

a 修改配制来完成

修改tomcat的配制文件server.xml中的连接器,加上URIEncoding="GB2312"就OK了

b 自己写编码转换程序

b.a 在与表单交换数据的时候,做转换,这种方式灵活

每一个页面请求写一个转换,或者写一个公共的类,在接收的时候,都做一下转移,代码如下:

  1. public static String ISOGBChange(String s)

  2. {

  3. return EncodeChange(s,"ISO8859-1","GB2312");

  4. }

  5. public static String EncodeChange(String s,String source_encode,String dest_encode)

  6. {

  7. if(s==null)

  8. return null;

  9. try

  10. {

  11. byte[] tmpbyte = s.getBytes(source_encode);

  12. s = new String(tmpbyte,dest_encode);

  13. return s;

  14. }

  15. catch (Exception e)

  16. {

  17. return "ERROR";

  18. }

  19. }


b.b 使用tomcat的web.xml中定义的过滤器filter来转换所有的请求编码

这个需要自己去研究一下过滤器的写法,再具体的转换编码,还是b.a中的代码进行编码转换的,只是转移不用再写在每个程序中了.

2 数据库中本来就是乱码

就是说数据库里面的数据本来就是乱码,无论您用什么编码连接数据库,查看到的都是乱码.如何确定数据库中本来就是乱码呢?(其实也不太容易确定,我们仅给出一个大概的判断)

您用客户端连接数据库的时候,一定要选择连接编码为GB2312,UTF-8,ISO-8859-1等常见的编码格式,连接并查看您的表中内容是不是正常的,若没有一种情况是正常的,应该就可以判定为乱码了.

当然,这个判定并不标准,甚至问题很多,但在国内,我想99%以上都用这几种编码.所以我认为这个判定准确性是可以被接受的.

解决方案:您用客户端连接数据库的时候,一定要选择连接编码为GB2312或者GBK,然后于重新执行数据库脚本,保证数据库里保存的是正常的字符.而不是乱码

3 从数据库提取出来就是乱码

数据库里本来是正常的,但用JAVA连接后,一经提取,就全乱了.

解决方案:修改JAVA连接数据库的URL,加上或者修改URL中的编码为UTF-8,characterEncoding=UTF-8,若是hibernate的配置问题,jdbc连接url不能有&符号,会导致出错或者后面不生效,我用&代替就好了

不要以为用的是GB2312这里就指定为GB2312(个人认为若指定为GB2312,驱动又多做了一次编码转换,所以就又成了乱码了)
当然,也可能驱动太旧等情况

关于"JSP虚拟主机使用中的乱码问题有哪些"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

数据 乱码 数据库 编码 就是 问题 情况 时候 方案 程序 篇文章 解决方案 主机 虚拟主机 代码 内容 客户 客户端 常见 更多 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 正版我的世界 服务器 工业软件开发社区 网络安全周看漫画涨知识 餐饮食品安全大数据库 关于加强学院网络安全的建议报告 常州科佳软件开发有限公司 局域网服务器架设方法 思科网络技术学院怎么修改用户名 推荐算法中的数据是用数据库的吗 天津党性体检软件开发系统 湖北宜昌的服务器云空间 数据库中的查询分析器在哪 信息网络安全生产许可证 学生党女生学习网络技术好吗 石泉中小学网络安全宣传 微信小程序可以访问内网服务器吗 北京pk10软件开发 软件开发考研专业就业方向 网络安全体系结构课件 dede 数据库连接失败 安卓手机删除缓存数据库 怎么把自己的服务器变成2b2t 服务器mgmt接口配置方法 浏览器和服务器之间的通信过程 北京品质软件开发操作 优质的重庆联通服务器托管 网络安全与网络维护 湖南高校党建软件开发公司 共享服务器的电脑会泄密吗 度小满金融数据库核心研发
0