
您好,您这样:
1使用GBK编码的解决方案
这个最简单 遇到设置编码的地方就是用GBK数据库gbk 然后在使用个过滤器过滤编码为gbk一切搞定。
效果为添加数据无乱码 读出无乱码 数据库管理工具无乱码 到处sql结构和数据无乱码 。
2使用UTF-8编码解决方案 所有编码都设置为UTF-8 数据库编码utf8 设置过滤器编码utf8
数据库连接characterEncoding=utf8 。
然后在数据库管理工具或mysql命令行 运行 SET character_set_results = gbk; 效果为添加数据无乱码 读出无乱码 数据库管理工具无乱码 到处sql结构和数据时存在乱码 。
3页面使用UTF8 数据库使用latin1的解决方案 jap java tomcat 设置为UTF-8 过滤器 utf8 。
在ubuntu麒麟系统中安装tomcat后,用户在搭建Demo程序的过程中有遇到tomcat中文显示乱码的情况,一般乱码都是因为编码问题导致的,而如果大家的编码设置是正确的话就是下面的原因导致的,遇到这种问题的网友可以看看下面为大家准备的解决方法。
ubuntu麒麟系统tomcat中文乱码怎么办?
出现乱码的本质是因为字符集的不统一,如果你的web浏览器发送到服务器的内容字符编码和服务器编码不一致,那么就会出现乱码。
解决方法:
(1)首先统一linux服务器的字符编码,统一配置为utf-8。
(2)配置tomcat配置文件serverxml,将
配置成:
(3)配置mysql数据库mycnf,将默认字符集设成utf-8。设置完数据库字符集之后再创建数据库,否则前后数据库字符集信息不一致,会导致插入错误。
Tomcat下中文乱码问题的其他解决思路
现在将常见的乱码问题分为JSP页面显示中文乱码、表单提交乱码两类。
1)JSP页面中显示中文乱码??
在JSP文件中使用page命令指定响应结果的MIME类型,如
2)表单提交乱码
表单提交时(post和Get方法),使用requestgetParameter方法得到乱码,这是因为tomcat处理提交的参数时默认的是iso-8859-1,表单提交get和post处理乱码问题不同,下面分别说明。
(1)POST处理
对post提交的表单通过编写一个过滤器的方法来解决,过滤器在用户提交的数据被处理之前被调用,可以在这里改变参数的编码方式,过滤器的代码如下:
(2)Get方法的处理
tomcat对post和get的处理方法不一样,所以过滤器不能解决get的乱码问题,它需要在其他地方设置。
打开conf目录下serverxml文件,找到对8080端口进行服务的Connector组件的设置部分,给这个组件添加一个属性:URIEncoding="GBK"。修改后的Connector设置为:
注意修改后重新启动tomcat才能起作用。
读出的数据乱码,你应该先看看数据库里存的是不是乱码。如果数据库存的就是乱码,说明刚开始的时候就错了。首先你要保证你的数据库的编码格式就是正确的,一般来说应该设置成gbk,这个支持中文等非西方文字。在数据库编码设置OK后,就要确保你的jsp、java、html文件等等都是统一的编码,gbk或者utf-8都行,这个在eclipse中可以设置的。
还有一点,tomcat的编码是iso-8859-1,如果实在找不出乱码的原因,可以尝试用如下代码来获取参数:
String para = requestgetParameter("para");
String real = new String(paragetBytes("iso-8859-1"),"utf-8");//或者utf-8换成gbk
_____________________________________
你要先打开mysql,看看数据库里存的是不是乱码;其次应该看的是,删除 *** 作时,后台接收到的参数是不是乱码了的,如果是,要看看你的删除部分和传参画面的编码格式是不是统一的。如果已经统一,将前台form的method由get改为post试试,另外注意,如果这样还不行,前面所提供的代码还是要试一下的。
以上就是关于java tomcat 怎么传递中文参数全部的内容,包括:java tomcat 怎么传递中文参数、tomcat-5.0.28中文乱码问题、如何解决Tomcat下中文乱码问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)