插入MYSQL数据乱码,100分解决 现在我做了一个JSP页面,使用HIBERNATE框架,向MYSQL插入数据(其中包括汉字),插入后发现汉字是乱码的,哪位能帮助解决一下,急等,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 配置的url里面后面加编码<param name="url" value="jdbc:mysql://192.168.8.4:3306/iplugserver?characterEncoding=utf8" /> 编码与你的数据库编码一致,数据库编码:mysql>show variables like '%char%'; JSP页面用UTF-8啦,修改MYSQL安装目录下的my.ini文件,这样default-character-set=gbk,default-character-set=utf8两个地方都改了,还有hibernate.cfg.xml中的URL的数据库名称后面加上?useUnicode=true&characterEncoding=utf-8,还有web.xml中加过滤器.<!--中文编码过滤器--> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>com.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8/param-value> </init-param> <init-param> <param-name>ignore</param-name> <param-value>true</param-value> </init-param> </filter>不一定都使用这些方法,改下my.ini文件就可以了的 存储数据库时,采取转码的方式,取出数据时也要转码,转成gb2312就差不多了,String str=new String(str.getBytes[],"gb2312"), 去看一下 JDK1.6 实例经典, 上面 有 江字符串 转成 对应的编码还有是在不行 配个过滤器 首先是弄清楚是页面乱码还是数据库乱码 数据库乱码的话,只有把lation改成utf-8就好了,具体可以去我blog中看下。 mysql不熟悉,好像UTF-8的不怎么支持 mysql安装的时候选择相应的字符集(如果忘了是什么可以到mysql目录下的my.ini文件中找charset),但建议重装 1、 <param name="url" value="jdbc:mysql://localhost:3306/iplugserver?characterEncoding=utf8" />2、因为一般数据库中的内容是iso-8859-1编码方式的,所以可将所有编码统一起来,将MySQL的数据库编码设置为utf-83、将jsp中所有与编码相关的都设置为uft-84、实在不行再插入数据看的时候进行转换。String有一个构造函数是提供编码方式的。代码不贴了 建数据库的时候选择编码utf-8看看 create table demo{ --tale fields list;}Engine=InnoDB default charset=GBK;创建每一张表都这样指定字符集就能插入中文而不会出现乱码了。 create table demo( --tale fields list;)Engine=InnoDB default charset=GBK;创建每一张表都这样指定字符集就能插入中文而不会出现乱码了。 不推荐GBK与GB2312UTF-8是国际化的,这个好页面与数据库统一假如是SQL Server的话,建议字段设置为nvarchar或者ntext类型即可(它不支持自定义编码) 如果你在插入前是正确的话,就看看mysql安装目录下的my.ini文件里面的字符集设置吧,改成gbk估计就好了 数据库的编码和JSP的编码一致就可以 【急求】对象数据合并,基础 java 集合 JAVA异常语句处理 [swing]布局时,实现上对齐? 用LinkeeList来实现Stack有什么优势? 这种socket数据该怎样读?? 请教关于JSP里<%@include >的问题~~~ 如何清除反射代码中的警告? jbuilder编辑器问题,光标在前,而输入的字符在后,如何解决 关于java getBytes()的疑问-编码转换相关 求助,请各位高手帮忙解决一个问题 发布Java应用程序
value="jdbc:mysql://192.168.8.4:3306/iplugserver?characterEncoding=utf8" />
mysql>show variables like '%char%';
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>com.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8/param-value>
</init-param>
<init-param>
<param-name>ignore</param-name>
<param-value>true</param-value>
</init-param>
</filter>
不一定都使用这些方法,改下my.ini文件就可以了的
还有是在不行 配个过滤器
数据库乱码的话,只有把lation改成utf-8就好了,具体可以去我blog中看下。
<param name="url" value="jdbc:mysql://localhost:3306/iplugserver?characterEncoding=utf8" />
2、因为一般数据库中的内容是iso-8859-1编码方式的,所以可将所有编码统一起来,将MySQL的数据库编码设置为utf-8
3、将jsp中所有与编码相关的都设置为uft-8
4、实在不行再插入数据看的时候进行转换。String有一个构造函数是提供编码方式的。代码不贴了
--tale fields list;}Engine=InnoDB default charset=GBK;创建每一张表都这样指定字符集就能插入中文而不会出现乱码了。
--tale fields list;)Engine=InnoDB default charset=GBK;创建每一张表都这样指定字符集就能插入中文而不会出现乱码了。
UTF-8是国际化的,这个好
页面与数据库统一
假如是SQL Server的话,建议字段设置为nvarchar或者ntext类型即可(它不支持自定义编码)