、Mysql编码问题:
- 要更改连接数据库的url,即在原url后加上一个参数:url="jdbc:mysql://127.0.0.1:3306/xxx?useUnicode=true&characterEncoding=utf8";
- 在建立数据库之前要保证处在一个utf8的环境,显示各个变量的编码: show variables like '%character%'; 截图如下:
注:上面列出的值就是系统的默认值 ,lanti是不支持中文的,所以我们把它改成 UTF8。
下面我们就来修改这四个层次的编码方式:
- 当然改变character_set_client, character_set_connection_,character_set_results编码方式的方法是:SET NAMES “UTF8”;
它的作用相当于:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8; - 改变数据库的编码方式
alter database databasename character set utf8;
3.
在建立数据库的时候设定编码
create database xxx default charset=utf8
4.建表:create table XXX( ......
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 编码设置 ;
5
.请求和响应时设置字符集参数:
Request.setCharacterEncoding(“utf-8”);
Response.setContentType(“text/html;charset=utf-8”);
6 . 页面头部设置 :
<meta http-equiv="content-type" content="text/html;charset=utf-8">