在javaweb向数据库插入中文字符时,会出现乱码问题.原因是你的mysql数据库的character_set_client与character_set_server 的两个字符集属性不是utf-8等支持中文的字符集.在mysql命令框输入
show variables like 'character_set_%';
你就可以看到相关属性如:
+--------------------------+-----------------------------------------------------------------+ | Variable_name | Value | +--------------------------+-----------------------------------------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | E:\Development Tools\wamp\bin\mysql\mysql5.5.20\share\charsets\ | +--------------------------+-----------------------------------------------------------------+
client 为客户端使用的字符集。 connection 为连接数据库的字符集设置类型,如果程序没有指明连接数据库使用的字符集类型则按照服务器端默认的字符集设置。 database 为数据库服务器中某个库使用的字符集设定,如果建库时没有指明,将使用服务器安装时指定的字符集设置。 results 为数据库给客户端返回时使用的字符集设定,如果没有指明,使用服务器默认的字符集。 server 为服务器安装时指定的默认字符集设定。 system 为数据库系统使用的字符集设定。
如果你的不为utf-8,可以去mysql的安装根目录下找到my.ini文件,在[mysql]下面添加
- default-character-set=utf8
在[mysqld]下面添加
- character-set-server=utf8
请注意修改好之后,请重新起动mysql数据库服务;
/*****/
mysql -u 用户名 -p
密码
进入mysql操作,mysql语句 show variables like “character_set_%”查看数据库安装编码与路径
如果您为linux操作系统,您可以去mysql安装目录下的etc文件下修改my.cnf相当于windows下的my.ini
然后重启
安装路径/init.d/mysqld stop;
安装路径/init.d/mysqld start;