mysql中文乱码
2016-04-04 23:35
316 查看
今天,使用eclipse开发mysql的时候出现中文乱码。
先说一下我的情况,所有eclipse文件的编码都是utf-8,
数据库的新建时编码选utf8
新建表的代码
DROP TABLE IF EXISTS `lineinfo`;
CREATE TABLE `lineinfo` (
`l_id` int(11) NOT NULL auto_increment,
`l_name` varchar(255) default NULL,
`l_voltagelevel` varchar(255) default NULL,
`l_type` varchar(255) default NULL,
`l_factory` varchar(255) default NULL,
`l_date1` datetime default NULL,
`l_date2` datetime default NULL,
`l_date3` datetime default NULL,
PRIMARY KEY (`l_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
我debug了,发现中文在前台和和后台交互的时候都是没有问题的,就连debug出的sql语句都是正确的,可就是不知道为啥,中文进了数据库就成了问号。。。。
找了半个多钟头网上的解决方案,都是前台,后台的乱码,可是我的就是写入数据库是的乱码,当时真是抓狂,很烦躁。
前后台编码都是utf-8,数据库编码也是utf-8,可是很奇怪,为啥就是乱码呢!
后天找到原因了,原来问题出在数据库连接池这里,这里楼主也是第一次关注,原来乱码问题也可能由于连接引起的
解决方案就是在url上申明你的连接字符编码;即
url="jdbc:mysql://127.0.0.1:3306/数据库名?useUnicode=true&characterEncoding=UTF-8“
然后就突然解决了,感觉瞬间解放了啊!
记录一下自己的情况,希望和我一样的人也能不用被这个小问题困扰
还有就是如果碰到后台接收到的是乱码,首先应该想到的是:
jsp:<%@ page language="java" import="java.util.*" pageEncoding="utf-8" contentType="text/html; charset=utf-8"%>
后台:
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
str2=new String(str1.getBytes("ISO-8859-1"),"utf-8");//str1为后台接收到的乱码字符串
先说一下我的情况,所有eclipse文件的编码都是utf-8,
数据库的新建时编码选utf8
新建表的代码
DROP TABLE IF EXISTS `lineinfo`;
CREATE TABLE `lineinfo` (
`l_id` int(11) NOT NULL auto_increment,
`l_name` varchar(255) default NULL,
`l_voltagelevel` varchar(255) default NULL,
`l_type` varchar(255) default NULL,
`l_factory` varchar(255) default NULL,
`l_date1` datetime default NULL,
`l_date2` datetime default NULL,
`l_date3` datetime default NULL,
PRIMARY KEY (`l_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
我debug了,发现中文在前台和和后台交互的时候都是没有问题的,就连debug出的sql语句都是正确的,可就是不知道为啥,中文进了数据库就成了问号。。。。
找了半个多钟头网上的解决方案,都是前台,后台的乱码,可是我的就是写入数据库是的乱码,当时真是抓狂,很烦躁。
前后台编码都是utf-8,数据库编码也是utf-8,可是很奇怪,为啥就是乱码呢!
后天找到原因了,原来问题出在数据库连接池这里,这里楼主也是第一次关注,原来乱码问题也可能由于连接引起的
解决方案就是在url上申明你的连接字符编码;即
url="jdbc:mysql://127.0.0.1:3306/数据库名?useUnicode=true&characterEncoding=UTF-8“
然后就突然解决了,感觉瞬间解放了啊!
记录一下自己的情况,希望和我一样的人也能不用被这个小问题困扰
还有就是如果碰到后台接收到的是乱码,首先应该想到的是:
jsp:<%@ page language="java" import="java.util.*" pageEncoding="utf-8" contentType="text/html; charset=utf-8"%>
后台:
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
str2=new String(str1.getBytes("ISO-8859-1"),"utf-8");//str1为后台接收到的乱码字符串
相关文章推荐
- 跟我一起学习MySQL技术内幕(第五版):(第一章学习日记7上)
- 10个MySQL性能调优的方法
- wamp下mysql错误提示乱码解决
- 65.(转) MySQL数据类型
- 《MySQL必知必会学习笔记》:插入数据
- mysql 函数,关键字,特性
- 安装mysql workbench
- mysql-阅读笔记1
- 《MySQL必知必会学习笔记》:全文本搜索
- Windows 10下mysql 64位 安装(mysql-5.7.11-winx64安装)
- Windows 10下mysql 64位 安装(mysql-5.7.11-winx64安装)
- mysql 8小时问题
- 查看mysql当前表使用的存储引擎(转)
- Mysql主从同步备份策略分享(实验修正版)
- mysql Install/Remove of the Service Denied!错误的解决办法
- mysql 一
- 解决 mysql 启动报错--发现系统错误2,系统找不到指定的文件
- MySQL数据库端字符集设置
- mysql 索引- 笔记
- MySQL数据库导入外部*.sql文件具体步骤