基于SSM框架插入mysql数据库中文乱码(显示问号)
mybatis.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="cn.tedu.cloud_test.dao.UserDao">
<insert id="save" parameterType="cn.tedu.cloud_note.entity.User">
INSERT INTO cn_user
(cn_user_id,cn_user_name,cn_user_password,cn_user_nick)
VALUES
(#{cn_user_id},#{cn_user_name},#{cn_user_password},#{cn_user_nick})
</insert>
</mapper>
db.properties的URL和driver
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/cloud_note?useUnicode=true&characterEncoding=utf8;zeroDateTimeBehavior=convertToNull
@Test
public void test2(){
User user = new User();
user.setCn_user_id("12345");
user.setCn_user_name("宇文玥");
user.setCn_user_password("1234");
user.setCn_user_nick("公子");
udao.save(user);
}
这种一般是原生代码和idea编码格式不一样
你找到idea右下脚中的
点击进去后
先选择gbk编码,然后点击convert,再yes
再执行一遍上面的操作,选择utf-8格式
应该就没有问题了,实在不行就从idea设置上修改编码,和数据库上修改编码格式