hibernate mysql UTF-8乱码

在用hibernate插入mysql中文数据库发生了乱码问题,网上查了下,大致是由于mysql默认数据库的collation不是utf-8的,或者帮你页面设置不统一导致。
解决方法:首先把表的collation设置为utf8-default-collation
在jsp页面上加上<%@ page language="java" import="java.util.*"
contentType="text/html;" pageEncoding="UTF-8"%>
在hibernate.cfg.xml<session-factory>中加入
    <property name="connection.useUnicode">true</property>
    <property name="connection.characterEncoding">UTF-8</property>
插入测试成功插入中文
另外在mysql command line client中
mysql>show variables like 'character_set_server';
mysql>show variables like 'collation_server';
查看当前服务器的字符集和校对规则

你可能感兴趣的:(java,Hibernate,mysql,utf8,collation)