jsp mysql utf8_jsp操作mysql存取中文乱码

jsp操作mysql存取中文乱码

关注:148  答案:3  mip版

解决时间 2021-01-18 15:23

e6cb1a03ad541b3098697807b7bf1798.png

提问者 侑點尐悲伤

2021-01-17 18:03

如题:jsp间中文参数传递得到的是中文,直接dos对mysql存中文也正常,但是jsp在mysql中存中文1个汉字在数据库中存一个问号,读出来也是几个问号,jsp读取数据库中的正常中文一个汉字显示两个问号,该如何解决?

mysql5.1.53,tomcat 6.0,jsp、mysql编码:gb2312

本人是jsp初学,什么S S H之类的搞不懂,还没学过,最好不用这方面的技术解决。

最佳答案

e6cb1a03ad541b3098697807b7bf1798.png

二级知识专家久别无恙

2021-01-17 19:19

在你的MySQL目录中找到my.ini文件,将里面的default-character-set= 的值设为GBK

然后,在你的获得参数的servlet文件中加上

request.setCharacterEncode(“gbk”)(只对post方法有效,要在getParameter()前设置)

或者在tomcat的目录下的conf文件夹内的server.xml文件中找到

maxThreads="150" connectionTimeout="20000"

redirectPort="8443" />

将其改为

maxThreads="150" connectionTimeout="20000"

redirectPort="8443" URIEncoding="GBK"/>

(后面这个只对get方法有效)

还有一种对get方法和post方法都有效:new String(x.getBytes(“iso-8859-1”), "gbk”)

全部回答

e6cb1a03ad541b3098697807b7bf1798.png

1楼戒烟戒酒戒粗口

2021-01-17 20:38

都是utf-8,jsp链接mysql出现乱码,通常都是因为数据库链接时用了其他编码链接,导致jsp获取到的数据为乱码

解决方法很简单,告诉jsp链接数据库的时候,用utf-8链接就行,具体操作方法为:在链接数据库的url后面加上 ?useunicode=true&characterencoding=utf-8 就行

例如:

jdbc:mysql://yourhost:3306/yourdb?useunicode=true&characterencoding=utf-8

& 这个符号可能需要转义,改成 & a m p ;(&开头,;结尾,删除空格)

e6cb1a03ad541b3098697807b7bf1798.png

2楼清欢话寂寥

2021-01-17 20:15

数据库卸载了,重新装一遍,安装过程中有个选择字符集的地方,这个地方一定记得选utf8这种字符集,否则还是会乱码的,这个乱码不是jsp的问题,而是数据库的问题

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

点此我要举报以上信息!

推荐资讯

大家都在看

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值