首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

mybatis连接mysql,在插入中文时,乱码,求,该如何处理

2013-01-26 
mybatis连接mysql,在插入中文时,乱码,急求本帖最后由 hbzyaxiu520 于 2012-02-20 18:25:26 编辑mybatis连

mybatis连接mysql,在插入中文时,乱码,急求
本帖最后由 hbzyaxiu520 于 2012-02-20 18:25:26 编辑 mybatis连接mysql,在插入中文时,乱码,急求
首先,mysql中的数据库和表都采用的是utf-8编码
同样的表结构用ibatis就没有问题,可是换了mybatis之后,插入数据库的总是乱码
经过,调试,当执行mybatis的insert方法之前,对象的属性值都还是中文(正常的)
表结构如下:

Create Table

CREATE TABLE `BG_OPERATE_LOGS` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '流水号',
  `userId` varchar(100) DEFAULT NULL COMMENT '用户名',
  `userDisplayName` varchar(200) DEFAULT NULL COMMENT '用户显示名',
  `contentBefore` varchar(3000) DEFAULT NULL COMMENT '修改前的记录',
  `contentAfter` varchar(3000) DEFAULT NULL COMMENT '修改后的记录',
  `operation` varchar(5000) DEFAULT NULL COMMENT '执行的动作',
  `logTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '日志记录日期',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=62189 DEFAULT CHARSET=utf8


插入的数据如下:
如:?UID??1001636??????????!

另外:logback.xml打印出来的运行期SQL:
 Executing: INSERT INTO BG_OPERATE_LOGS( userId,userDisplayName,userIp, contentBefore,contentAfter,operation,action ) VALUES (?,?,?,?,?,?,? ) 
18:13:53.137 DEBUG java.sql.PreparedStatement 28 - ==> Parameters: demo(String), 测试用户(String), (String), WhiteListVo [id=0, uid=1001636](String), null, 将UID为【1001636】的玩家从白名单解除!(String), sgms:user:whiteListDelete(String)
求解决
[解决办法]
没用过mybatis,不过估计是mybatis的编码出了问题,看看mybatis是否有编码设置

热点排行