LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1106|回复: 4

求助:MYSQL在终端下中文显示正常,但在JSP调用显出乱码!

[复制链接]
发表于 2006-11-26 17:12:26 | 显示全部楼层 |阅读模式
MYSQL在终端下中文显示正常,但在JSP调用显出乱码!

我在/etc/mysql/my.cnf中加了default-character-set=utf8
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english

default-character-set=utf8

skip-external-locking





用JSP查询显示乱码,用(new String(string.getBytes("ISO-8859-1"),"gb2312")还是显乱码

用<%@ page contentType="text/html; charset=GB2312;pageEncoding="gb2312"%>还是显乱码


上面的编码中用UTF-8,GBK,GB2312,LATIN1,ISO-8859-1等编码试过了,结果还是乱码,不知道是何原因???
发表于 2006-11-27 13:15:20 | 显示全部楼层
查MYSQL的终端编码 跟JSP里的一样?
回复 支持 反对

使用道具 举报

发表于 2006-11-27 23:39:29 | 显示全部楼层
我曾经用java bean+jsp碰到这个情况
当时就在编译java bean的时候加上了参数-encoding gbk就解决了,原因不明

  1. javac -encoding gbk java_bean.java
复制代码

jdk 1.4.2,jsp的页面编码是utf-8,数据库用的是Oracle
回复 支持 反对

使用道具 举报

发表于 2006-11-28 18:42:44 | 显示全部楼层
你是怎么连接mysql的?有没有加上声明字符集的参数?
回复 支持 反对

使用道具 举报

发表于 2006-12-7 13:42:22 | 显示全部楼层
我也是用以下三点解决的:第二点用的是spring
1.all the jsp page is encoding GBK like this:
<%@ page contentType="text/html; charset=GBK" pageEncoding="GBK"%>
<meta http-equiv="content-type" content="text/html; charset=GBK">
2. connect mysql using GBK encoding in applicationContext.xml
<property name="url">
<value>jdbc:mysql://localhost:3306/Bag?useUnicode=true&amp;characterEncoding=GBK</value>
</property>
remember that ';' is marked '&amp;', otherwise is show error about 'need ;'
3. both tables and columns encoded GBK
it ensure save and get chinese data from mysql normally
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表