从Hibernate entitymanager 3.6.9移动到4.1.2崩溃的mysql连接

时间:2012-05-07 22:41:25

标签: java hibernate

我发现有关于从3.x迁移到4.x的帖子。

但是,我无法破译和关联这些指南对我的maven依赖关系或代码所需要做的事情。

特别是在

之后操作失败
  

TypedQuery q = em.createQuery(blah ..);

  

列出结果= q.getResultList();

当司机试图获得连接时,最终会呱呱叫

  

找不到合适的司机......

关于我是否需要

,我找不到任何直接的答案
  • 对persistence.xml进行更改
  • 更改我的代码
  • 重新调整我的JPA范例

我需要对我的代码和maven依赖项进行任何更改吗?我是否应该习惯于习惯于休眠4?

的persistence.xml:

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
  version="1.0">
  <persistence-unit name="z666" transaction-type="RESOURCE_LOCAL">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <class>z666.Node</class>
    <properties>
      <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLInnoDBDialect" />
      <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />
      <property name="hibernate.show_sql" value="true" />
      <property name="hibernate.connection.username" value="zzz" />
      <property name="hibernate.connection.password" value="666" />
      <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/z666" />
      <property name="hibernate.max_fetch_depth" value="3" />
    </properties>
  </persistence-unit>
</persistence>

1 个答案:

答案 0 :(得分:0)

好像你错过了MySQL驱动程序mysql-connector-java-<version>.jar Current versionmysql-connector-java-5.1.20.jar。你需要像maven一样的依赖:

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>5.1.20</version>
</dependency>

我不知道Hibernate 4可以接受哪些版本,但我认为你至少需要5.1