jdbc连接mysql,插入中文字段乱码问题

时间:2021-10-25 07:46:12

最近在学习orm框架,插入对象中字段含有中文字符,发现数据库表中中文字段为???

解决过程:

  1. url值从jdbc:mysql://localhost:3306/test改为jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
  2. 项目编码格式改为utf8
  3. 查询当前数据库字符编码 SHOW VARIABLES LIKE "character%";  
    1. 发现| character_set_database和 character_set_server   为latin1 
    2. 在my.ini中设置
      1. default-character-set=utf8
      2. character-set-server=utf8
    3. 重启mysql服务
  4. 之前建表时没有指定编码格式为utf8,重新建表
    1. CREATE TABLE bobo_user (
        user_id varchar(100),
        username varchar(30) ,
        nickname varchar(30),
        phone_number varchar(30) ,
        password varchar(30),
        PRIMARY KEY (user_id)
      )  DEFAULT CHARSET=utf8;

       

    问题解决