2017-04-01 140 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(); 
相關問題