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中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章

ssm框架中.serialize()传递中文乱码问题

idea ssm项目出现日志中文乱码,封装的json中的msg字段中文乱码(但是json封装的bean中的字段不乱码)等其他各种项目下的中文乱码解决方案

SSM项目经常遇到的乱码问题

ssm框架插入mysql数据库中文乱码问题解决

SSM controller返回json中文乱码解决方法

ssm框架中的乱码问题的解决