黑马程序员技术交流社区

标题: 有关字节编码的问题 [打印本页]

作者: 金辉    时间: 2013-5-2 23:22
标题: 有关字节编码的问题
本帖最后由 金辉 于 2013-5-3 14:14 编辑

我在jsp页面文本框中输入中文再提交到servlet,由servlet插入到数据库之后为什么会变成乱码?怎么解决?求指点

作者: 谭威    时间: 2013-5-3 00:52
有两种解决方法。第一种设置在servlet request.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");,第二种用过滤器。
作者: 金辉    时间: 2013-5-3 08:23
谭威 发表于 2013-5-3 00:52
有两种解决方法。第一种设置在servlet request.setCharacterEncoding("utf-8");response.setContentType("t ...

以前在jsp中显示读取出来的值那样设置可以,往数据库中插还是不行
作者: 吴建昆    时间: 2013-5-3 09:22
查看数据库编码,楼主的数据库是mysql吧,如果是修改一下编码
作者: 吴建昆    时间: 2013-5-3 09:28
查看数据库编码,楼主的数据库是mysql吗,如果是,查看编码:命令:show variables like 'character_set_%',修改为你的统一编码
作者: 金辉    时间: 2013-5-3 10:35
吴建昆 发表于 2013-5-3 09:28
查看数据库编码,楼主的数据库是mysql吗,如果是,查看编码:命令:show variables like 'character_set_%' ...

是mysql,现在我测试完在往数据库插之前的是中文,插入后数据库中乱码,编码格式都改了,自己往数据库中写一条中文数据读出来是正确的。
作者: harborbest    时间: 2013-5-3 11:23
数据库编码方式一定要和jsp里面的编码方式统一!
作者: 金辉    时间: 2013-5-3 11:44
harborbest 发表于 2013-5-3 11:23
数据库编码方式一定要和jsp里面的编码方式统一!

可以不统一的,刚测试的。现在出来了
url=jdbc:mysql://localhost/数据库名?useUnicode=true&characterEncoding=UTF-8
url后面缺了一段话设置数据库




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2