ssm中文乱码问题
Posted 慧妃不美
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssm中文乱码问题相关的知识,希望对你有一定的参考价值。
(1)详解Spring中的CharacterEncodingFilter--forceEncoding为true <a href=" http://www.cnblogs.com/sunrunzhi/p/5803029.html">两者关系与区别
(2)从数据库获取数据时候就是乱码,要确保数据表与数据库中的编码一致,设置数据表的编码就是点击文件,设计表,把鼠标放在属性上就可以设置数据表编码。
设计数据库的编码右击数据库名字,有一个数据库属性,设置属性一致。即可。如果还是获取数据库数据后是乱码,就来一个杀手锏,转储sql文件,把文件删编码全部设置成一样的,把原来的数据库删掉,下面是我的sql文件里面的内容,都设置好了一样的编码格式
DROP TABLE IF EXISTS `book`;
CREATE TABLE `book` (
`bid` INT(11) NOT NULL AUTO_INCREMENT,
`bname` VARCHAR(100) CHARACTER SET utf8 DEFAULT NULL,
`author` VARCHAR(20) CHARACTER SET utf8 DEFAULT NULL,
`image` VARCHAR(200) COLLATE utf8_bin DEFAULT NULL,
`cid` INT(11) DEFAULT NULL,
`price` DECIMAL(5,2) DEFAULT NULL,
PRIMARY KEY (`bid`)
);
INSERT INTO `book` VALUES (\'1\', \'世界装饰艺术\', \'袁隆平\', \'img/art01.jpg\', \'3\', \'25.50\');
INSERT INTO `book` VALUES (\'2\', \'隶书实用字典\', \'杨小光\', \'img/art02.jpg\', \'3\', \'19.20\');
INSERT INTO `book` VALUES (\'3\', \'齐白石小篆\', \'齐白石\', \'img/art03.jpg\', \'3\', \'41.40\');
INSERT INTO `book` VALUES (\'4\', \'花灯\', \'花哥\', \'img/art04.jpg\', \'3\', \'16.78\');
INSERT INTO `book` VALUES (\'5\', \'好性格会更受欢迎\', \'高品德\', \'img/his01.jpg\', \'2\', \'38.00\');
INSERT INTO `book` VALUES (\'6\', \'格林童话\', \'格林\', \'img/his02.jpg\', \'2\', \'0.00\');
INSERT INTO `book` VALUES (\'7\', \'笠翁对韵\', \'笠翁\', \'img/his03.jpg\', \'2\', \'23.80\');
INSERT INTO `book` VALUES (\'8\', \'安徒生童话\', \'安徒生\', \'img/his04.jpg\', \'2\', \'15.80\');
INSERT INTO `book` VALUES (\'9\', \'javaEE7权威指南\', \'张三\', \'img/java01.jpg\', \'1\', \'86.90\');
INSERT INTO `book` VALUES (\'10\', \'springboot实战\', \'赵飞燕\', \'img/java02.jpg\', \'1\', \'73.90\');
INSERT INTO `book` VALUES (\'11\', \'布局javaEE企业开发\', \'黑客大牛\', \'img/java03.jpg\', \'1\', \'67.94\');
INSERT INTO `book` VALUES (\'12\', \'javaEE教程\', \'菜鸟大叔\', \'img/java04.jpg\', \'1\', \'31.60\');
DROP TABLE IF EXISTS `category`;
CREATE TABLE `category` (
`cid` INT(11) NOT NULL AUTO_INCREMENT,
`cname` VARCHAR(100) NOT NULL,
PRIMARY KEY (`cid`)
);
INSERT INTO `category` VALUES (\'1\', \'javase\');
INSERT INTO `category` VALUES (\'2\', \'historybook\');
INSERT INTO `category` VALUES (\'3\', \'artbook\');
DROP TABLE IF EXISTS `orders`;
CREATE TABLE `orders` (
`oid` INT(11) NOT NULL AUTO_INCREMENT,
`ordertime` DATETIME DEFAULT NULL,
`total` DECIMAL(10,0) DEFAULT NULL,
`state` SMALLINT(1) DEFAULT NULL,
`uid` INT(11) DEFAULT NULL,
`address` VARCHAR(200) DEFAULT NULL,
PRIMARY KEY (`oid`),
KEY `FK_orders` (`uid`)
);
DROP TABLE IF EXISTS `orderitem`;
CREATE TABLE `orderitem` (
`iid` INT(11) NOT NULL AUTO_INCREMENT,
`count` INT(11) DEFAULT NULL,
`subtotal` DECIMAL(10,0) DEFAULT NULL,
`oid` INT(32) DEFAULT NULL,
`bid` INT(32) DEFAULT NULL,
PRIMARY KEY (`iid`)
);
DROP TABLE IF EXISTS `tb_user`;
CREATE TABLE `tb_user` (
`uid` INT(11) NOT NULL AUTO_INCREMENT,
`username` VARCHAR(50) NOT NULL,
`password` VARCHAR(50) NOT NULL,
`email` VARCHAR(50) NOT NULL,
`code` CHAR(64) NOT NULL,
`state` TINYINT(1) DEFAULT NULL,
PRIMARY KEY (`uid`)
);
INSERT INTO `tb_user` VALUES (\'1\', \'wth\', \'123456\', \'123@123.com\', \'12\', \'0\');
粘贴到图形界面的运行处,于是发现乱码问题解决了
(3)在servlet或者是contoller文件中要设置(详解可看http://blog.csdn.net/fancylovejava/article/details/7700683)
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
以上是关于ssm中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章
idea ssm项目出现日志中文乱码,封装的json中的msg字段中文乱码(但是json封装的bean中的字段不乱码)等其他各种项目下的中文乱码解决方案