乱码解决方案
一,配置文件 url
创建数据库指定数据库编码
create database test character set =utf8;
二,创建数据库
配置数据库连接指定编码
url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8;
三,修改数据库
修改数据库编码
alter database test character set =utf8;
四,建表
指定数据库存储引擎默编码
create table t_emp(
id varchar(4),
name varchar(20),
age int
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
五,请求方式
设置请求方式为post请求
<form action=" " method="post">
</form>
六,request对象
设置解析请求编码
request.setCharacterEncoding("utf-8");
七,response对象
设置响应编码
response.setContentType("text/html;charset=utf-8");
八,页面
设置JSP编译成 Servlet时使用的编码
<%@ pageEncoding="utf-8"%>
设置对服务器响应进行解析的编码
九,tomcat配置文件
让tomcat以 utf-8编码方式处理请求
tomcat下的 conf/server.xml
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="8443" />
加上 URIEncoding="UTF-8"
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
十,终端
解决在终端显示乱码,并不能对数据库编码格式做改变
set names utf8;