在java中配置hibernate,mysql时出错
Posted
技术标签:
【中文标题】在java中配置hibernate,mysql时出错【英文标题】:Getting error in configuration of hibernate , mysql in java 【发布时间】:2018-01-24 09:06:26 【问题描述】:我是新来的休眠。 我收到了类似的错误 未找到 hibernate.properties 并拒绝用户 'root'@'localhost' 的访问(使用密码:YES)
我正在使用 mysqlWorkbench 版本 5.7.19 和休眠版本 5.2.6.Final jdk 1.8 带日食氧气
这是我的 hibernate.cfg.xml 文件
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">gary@1234</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hbm2ddl.auto">update</property>
</session-factory>
这里是 pom.xml
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.2.6.Final</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
这是我的代码
public class App
public static void main(String[] args)
Alien alien = new Alien();
alien.setAid(101);
alien.setAname("pawan");
alien.setColor("purple");
Configuration con = new Configuration().configure();
SessionFactory sf = con.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
session.save(alien);
tx.commit();
这是 pojo 类
public class Alien
@Id
private int aid;
private String aname;
private String color;
public int getAid()
return aid;
public void setAid(int aid)
this.aid = aid;
public String getAname()
return aname;
public void setAname(String aname)
this.aname = aname;
public String getColor()
return color;
public void setColor(String color)
this.color = color;
【问题讨论】:
您确定您的数据库用户是“root”并且您的密码是“gary@1234”吗? 是的,其他没有休眠的应用程序也可以正常工作 你把 hibernate.cfg.xml 文件放在哪里了? 我使用 hibernate 插件在 src/main/java 中创建了它 你能显示实际的错误信息吗? 【参考方案1】:感谢大家付出宝贵的时间。 我只是通过进行更改来得到解决方案
Configuration con = new Configuration().configure("hibernate.cfg.xml").addAnnotatedClass(Alien.class);
其实并没有得到hibernate.cfg.xml和class的属性
【讨论】:
【参考方案2】:您应将@Entity
添加到Alien
,如下:
@Entity
public class Alien
//...
【讨论】:
没关系。你可以测试我的解决方案。如果你有很多类,将@Entity
添加到实体类是更好的方法。【参考方案3】:
Using password: YES,表示你输入的连接数据库的密码不正确。
【讨论】:
以上是关于在java中配置hibernate,mysql时出错的主要内容,如果未能解决你的问题,请参考以下文章
Java基础103 Hibernate技术连接MySQL数据和Oracle数据库的配置方法
Java Hibernate LazyInitializationException 仅在仅使用 JUnit 运行时出现
请问这个是啥错误,我用的是mysql,在整合hibernate时出现这个错误,我的数据库密码为空
Hibernate - 使用 net.ucanaccess.jdbc.UcanaccessDriver 时出现 org.hibernate.MappingException