1

我是休眠的新手。我创建了一个简单的程序来使用 Hibernate 向 db 插入值。

我的文件结构看起来像

src -> com.visolve -> AddStudent.java and student.java

src -> com.xml -> hibernate.cfg.xml and student.hbm.xml

我使用以下代码从 AddStudent.java 传递配置文件

 String file = "/src/com/xml/hibernate.cfg.xml";
 sessionFactory = new Configuration().configure(new File(file)).buildSessionFactory();

我的 hibernate.cfg.xml 文件是

<?xml version='1.0' encoding='utf-8'?>
 <!DOCTYPE hibernate-configuration PUBLIC
  "-//Hibernate/Hibernate Configuration DTD//EN"
  "http://hibernate.sourceforge.net/
   hibernate-configuration-3.0.dtd">

   <hibernate-configuration>
    <session-factory>
     <property name="hibernate.connection.driver_class">
       com.mysql.jdbc.Driver</property>
       <property name="hibernate.connection.url">
       jdbc:mysql://localhost:3306/hibernateExamples</property>
      <property name="hibernate.connection.username">
       root</property>
      <property name="hibernate.connection.password">
      </property>
      <property name="hibernate.connection.pool_size">
      10</property>
       <property name="show_sql">true</property>
       <property name="dialect">
       org.hibernate.dialect.MySQLDialect</property>
       <property name="hibernate.hbm2ddl.auto">
         update</property>

           <!-- Mapping files -->

     <mapping resource="com/xml/student.hbm.xml"/>
     </session-factory>
   </hibernate-configuration>

如果我检查 new File(file).exists() 意味着它返回 true .. 但这里它返回以下异常

Initial SessionFactory creation failed.org.hibernate.HibernateException: Could not parse configuration: src/com/xml/hibernate.cfg.xml
Exception in thread "main" java.lang.NullPointerException
at com.visolve.AddStudent.main(AddStudent.java:44)
4

1 回答 1

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

 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" 
   "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

   <hibernate-configuration>
      <session-factory>
      <property name="hibernate.connection.driver_class">
         com.mysql.jdbc.Driver</property>
       <property name="hibernate.connection.url">
            jdbc:mysql://localhost:3306/hibernateexamples</property>
       <property name="hibernate.connection.username">
          root</property>
       <property name="hibernate.connection.password">
           admin</property>
       <property name="hibernate.connection.pool_size">
            10</property>
       <property name="show_sql">true</property>
       <property name="dialect">
              org.hibernate.dialect.MySQLDialect</property>
       <property name="hibernate.hbm2ddl.auto">
            update</property>

       <!-- Mapping files -->

       <mapping resource="com/xml/student.hbm.xml" />
   </session-factory>
于 2012-09-12T05:21:33.433 回答