我使用Tomat做Java WEB开发,总是时不时出现乱码问题,我现在想彻底搞定乱码问题,请教大家,我应该如何做?
2条回答 默认 最新
- qichunren 2008-08-13 17:03关注
这是因为你没有搞懂乱码产生的原因:乱码产生的原因是由于每一个环节所使用的编码不一致,如页面编码,请求编码,数据库存贮的编码,只有保证它们都是同一编码才不会出现乱码.
我一般推荐你使用utf-8编码.
对于使用Tomcat的话,一般做好以下几步就可以如你所说地彻底搞定乱码问题:
1.设置Tomcat的request编码,这要配置Tomcat的server.xml文件,找到8080那一块,配置如下:
[code="java"]
方法是找到 server.xml 中的<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding='utf-8' />[/code]
2.页面上都有头部
尽量手动带参数-ecoding UTF-8或-ecoding UTF-8编译;对于JSP,在文件头加上<%@ page contentType="text/html;charset=GBK"%>或<%@ page contentType="text/html;charset=gb2312"%>3.使用字符过滤器,这个过滤器到处都有,你可以在tomcat 的demo中找到,叫SetCharacterEncoding
4.创建数据库和表的时候,你指定编码.
5.连接数据库的时候(mysql),你指定一下编码.
我平时就是这样做的,一般就搞定了,如果对于jsp文件编辑的时候出现乱码,你可以把文本文件另存为utf-8试试.
其实你问的这些在google中搜搜就可以了.
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 ubuntu子系统密码忘记
- ¥15 保护模式-系统加载-段寄存器