java插入mysql乱码

内容摘要
java插入mysql乱码java插入数据到mysql分为三层:● 前端页面● 后台代码● 数据库这三层任意一层乱码都不行,所以我们需要对着三层逐一设置编码格式,保存编码统一就不会乱码了
文章正文

java插入mysql乱码

java插入数据到mysql分为三层:

● 前端页面

● 后台代码

● 数据库

这三层任意一层乱码都不行,所以我们需要对着三层逐一设置编码格式,保存编码统一就不会乱码了。

详解三层编码设置解决乱码问题

1、前端

前端就是设置页面的字符集

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

2、后台代码

1)

a.Windows里面的Preferences(首选项框),在general里面找workspace,右侧有text file encoding,改为utf-8(这个是开发ide的字符集修改)

b.鼠标点击你的项目最顶层,然后在project里面找到这个项目的字符编码,改为utf-8(项目的字符集修改)

2)

代码要在获取数据之前指明request和response的编码类型(我这里都用utf-8)

response.setContentType("text/html;charset=utf-8"); 
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");

设置完成之后,可以这么获取中文字符!

String name = new String(request.getParameter("name").getBytes("utf-8"), "utf-8"))

连接数据库时使用:

jdbc:mysql://localhost:3306/xxx?useUnicode=true&characterEncoding=utf8

3、数据库

my.ini的文件中的[mysqld]标签中设置:

#做了如下添加
[client]
default-character-set=utf8
character-set-server=utf8
init_connect='SET NAMES utf8'

通过以上设置,就不会再出现乱码问题了!

代码注释
[!--zhushi--]

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!