Hql语句转化为sql语句中文乱码问题

时间:2021-01-07 06:00:13

刚刚学习Hql语句就出现这一的问题,百度半天终于解决了,总结一下解决的方案:

出现中文乱码最可能的原因是hibernate配置文件配置的问题

1、检查url路径是否指定字符集为UTF-8

<property name="connection.url">jdbc:mysql:///webshop?useUnicode=true&characterEncoding=UTF-8</property>

 2、检查是否有设立查询翻译器

  <property name="hibernate.query.factory_class">
    org.hibernate.hql.classic.ClassicQueryTranslatorFactory
  </property>

 3、如果到这里还没有解决就有可能是tomcat的问题,可以修改tomcat的配置文件:

在tomcat的安装目录下找conf文件下的server.xml文件修改Connector属性添加URIEncoding="utf-8"