通过jsp页面向mysql数据库插入中文数据时乱码问题

2 篇文章 0 订阅
1 篇文章 0 订阅

    刚开始插入数据时,mysql数据库表内显示???,读取时同样也是???

    对此查找了相关资料,首先注意保持服务器、数据库、项目、以及前端编码一致。

①项目以及前端编码,设置。

Eclipse Java EE IDE for Web Developers ->右键项目 -> Properties -> Resource -> Text file encoding ->other utf-8 ->apply and close

②tomcat服务器编码设置(conf\server.xml)

<Connector port="8080" protocol="HTTP/1.1"   
             connectionTimeout="20000"   
             redirectPort="8443"  URIEncoding="UTF-8"/>  

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>  

③mysql的my.ini配置文件(注:使用的 wampserver自带的mysql数据库,故直接右键wampserver标志查找mysql即可看到my.ini文件

[client]  
port = 3306   
default-character-set=utf8 

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
; Remove the next comment character if you are not familiar with SQL
;safe-updates
default-character-set=utf8 

[isamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer_size = 2M
write_buffer_size = 2M

[myisamchk]
key_buffer_size = 20M
sort_buffer_size_size = 20M
read_buffer_size = 2M
write_buffer_size = 2M

[mysqlhotcopy]
interactive-timeout

[mysqld]
port = 3306

character-set-server = utf8

    修改文件后需要重启mysql服务,若使用net stop mysql/net start mysql关闭开启mysql服务不成功的,可以直接在任务管理器中查找服务wampmysqld64进行重启,如下图。



    至此解决???问题。但是数据库表中和页面显示仍为乱码。

    

    将所有代码文档设置为utf8格式。同时在链接数据库文件(.java)中,作如下修改:

String url = "jdbc:mysql://localhost:3306/mybirger?characterEncoding=UTF-8";


    在转换字符编码文件中
// 将传递进来的字符串转换成byte数组,并确定其编码
byte[] b = value.getBytes("ISO-8859-1");
// 用byte数组构造一个新的字符串,并指定其编码
cn = new String(b, "UTF-8");



  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值