2017-04-01 138 views
0

你好我想简单的休眠计划,但不能够解决这个问题,任何人都可以帮助异常线程 “main” org.hibernate.HibernateException:

UserDetails.class

package org.pavan.dto; 
import javax.persistence.Entity; 
import javax.persistence.Id; 

@Entity 
public class UserDetails { 
@Id 
private int userId; 
private String userName; 
public int getUserId() { 
    return userId; 
} 
public void setUserId(int userId) { 
    this.userId = userId; 
} 
public String getUserName() { 
    return userName; 
} 
public void setUserName(String userName) { 
    this.userName = userName; 
} 

}

HibernateTest.java

package org.pavan.hibernate;

import org.hibernate.Session; 
import org.hibernate.SessionFactory; 
import org.hibernate.cfg.Configuration; 
import org.pavan.dto.UserDetails; 

public class HibernateTest { 

public static void main(String[] args) { 
    UserDetails user =new UserDetails(); 
    user.setUserId(1); 
    user.setUserName("First User"); 
    SessionFactory sessionFactory = new Configuration().configure("C:\\Users\\pavan\\workspace\\FirstHibernateProject\\src\\hibernate.cfg.xml").buildSessionFactory(); 
    Session session=sessionFactory.openSession(); 
    session.beginTransaction(); 
    session.save(user); 
    session.getTransaction().commit(); 

    } 

} 

的hibernate.cfg.xml

<?xml version='1.0' encoding='utf-8'?> 
<!-- 

〜休眠,关系数据库持久Java习惯 〜 〜许可:GNU宽通用公共许可证(LGPL),2.1或更高版本。 〜请参阅根目录中的lgpl.txt文件或http://www.gnu.org/licenses/lgpl-2.1.html。 - >

<session-factory> 

    <!-- Database connection settings --> 
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property> 
    <property name="connection.url">jdbc:mysql://localhost:3306/hibernatedb</property> 
    <property name="connection.username">root</property> 
    <property name="connection.password">admin</property> 

    <!-- JDBC connection pool (use the built-in) --> 
    <property name="connection.pool_size">1</property> 

    <!-- SQL dialect --> 
    <property name="dialect">org.hibernate.dialect.MySQLDialect</property> 

    <!-- Disable the second-level cache --> 
    <property name="cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property> 

    <!-- Echo all executed SQL to stdout --> 
    <property name="show_sql">true</property> 

    <!-- Drop and re-create the database schema on startup --> 
    <property name="hbm2ddl.auto">create</property> 

    <!-- Names the annotated entity class --> 
    <mapping class="org.pavan.dto.UserDetails"/> 

</session-factory> 

错误:

INFO:配置资源:C:\用户\帕\工作空间\ FirstHibernateProject \ SRC \的hibernate.cfg.xml 线程“main”中的异常org.hibernate.HibernateException:C:\ Users \ pavan \ workspace \ FirstHibernateProject \ src \ hibernate.cfg.xml找不到 at org.hibernate.util.ConfigHelper.get在org.pavan处的org.hibernate.cfg.Configuration.configure(Configuration.java:1427) 处的org.hibernate.cfg.Configuration.getConfigurationInputStream(Configuration.java:1405) 处的ResourceAsStream(ConfigHelper.java:147) 。 hibernate.HibernateTest.main(HibernateTest.java:14)

谁能帮助请

在此先感谢它

+0

'C:\用户\帕\ workspace \ FirstHibernateProject \ src \ hibernate.cfg.xml'这个文件是否存在?错误说这个文件没有找到。你的'hibernate.cfg.xml'文件位于哪里? –

+0

我已将它保存在src文件夹之外的所有包内,src – Prabhu

+0

所以你说你可以在这个路径中找到hibernate.cfg.xml'C:\ Users \ pavan \ workspace \ FirstHibernateProject \ src'?真的很奇怪,它无法找到它。只要确保文件名中没有错别字。 –

回答

0

一些如何不是让您的路径休眠.cfg.xml,

String path = String.format("%s/%s",System.getProperty("user.dir"), "src/hibernate.cfg.xml"); 

SessionFactory sessionFactory = new Configuration().configure(path).buildSessionFactory(); 

,或者你可以尝试 - >添加resources文件夹内src和

marked as resources directory

外接移动你的hibernate.cfg.xml里面,

SessionFactory sessionFactory = return new Configuration().configure().buildSessionFactory(); 
相关问题