启动时出现Hibernate异常 [英] Hibernate exception on startup

查看:144
本文介绍了启动时出现Hibernate异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚开始学习Hibernate。为此我写了一个简单的Java程序。
但是当我尝试执行程序时,我遇到了异常。

  2014年4月30日1:54: 18 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager< clinit> 
INFO:HCANN000001:Hibernate Commons Annotations {4.0.4.Final}
Apr 30,2014 1:54:18 PM org.hibernate.Version logVersion
INFO:HHH000412:Hibernate Core {4.3 .5.Final}
线程main中的异常java.lang.ExceptionInInitializerError $ b $ org.hibernate.cfg.Configuration.reset(Configuration.java:324)
org.hibernate。 cfg.Configuration。< init>(Configuration.java:289)
at org.hibernate.cfg.Configuration。< init>(Configuration.java:293)
at com.hiber.main。 Main.main(Main.java:19)
导致:java.lang.NullPointerException
在org.hibernate.internal.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:170)
at org.hibernate.cfg.Environment。< clinit>(Environment.java:221)
... 4 more

以下是程序:

  package com.hiber.main; 

import javax.naming.NamingException;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
导入org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
$ b $ public class main {

public static void main(String [] args)throws NamingException {
// SessionFactory sessionFactory = new Configuration()。configure() .buildSessionFactory(new StandardServiceRegistryBuilder()。build());

ServiceRegistry serviceRegistry;
SessionFactory sessionFactory;

配置配置=新配置();
configuration.configure(/ com / hiber / main / hibernate.cfg.xml);
serviceRegistry = new StandardServiceRegistryBuilder()。applySettings(configuration.getProperties())。build();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);

Session sess = sessionFactory.getCurrentSession();
sessionFactory.openSession();
sess.beginTransaction();

Test1 t = new Test1();
t.setTest1Ind(1);
t.setName(name);
t.setPassword(abcd1234);
sess.saveOrUpdate(t);

sess.getTransaction()。commit();
sess.close();




$ b

以下是cfg xml:

 <!DOCTYPE hibernate-configuration PUBLIC -  // Hibernate / Hibernate Configuration DTD 3.0 / / ENhttp://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd\"> 
< hibernate-configuration>
< session-factory>
< property name =hibernate.connection.driver_class> com.mysql.jdbc.Driver< / property>
< property name =hibernate.connection.password> root1234< / property>
< property name =hibernate.connection.url> jdbc:mysql:// localhost:3306 / test< / property>
< property name =hibernate.connection.username>根< / property>
< property name =hibernate.default_schema> test< / property>
< property name =hibernate.dialect> org.hibernate.dialect.MySQLDialect< / property>
< property name =current_session_context_class>线程< / property>
< / session-factory>
< / hibernate-configuration>

我已经包含了所有的依赖关系。希望我没有错过任何东西。
目前无法添加图片。



请任何人看看代码,并且想一想这里可能会出现什么问题。
在此先感谢。

解决方案

1删除项目中的依赖关系。
2添加正确的依赖关系(jar)。

I have just started learning Hibernate. For that I have written a simple Java Program. But when I try to execute the program I am getting following exception.

Apr 30, 2014 1:54:18 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.4.Final}
Apr 30, 2014 1:54:18 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.3.5.Final}
Exception in thread "main" java.lang.ExceptionInInitializerError
    at org.hibernate.cfg.Configuration.reset(Configuration.java:324)
    at org.hibernate.cfg.Configuration.<init>(Configuration.java:289)
    at org.hibernate.cfg.Configuration.<init>(Configuration.java:293)
    at com.hiber.main.Main.main(Main.java:19)
Caused by: java.lang.NullPointerException
    at org.hibernate.internal.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:170)
    at org.hibernate.cfg.Environment.<clinit>(Environment.java:221)
    ... 4 more

Following is the program:

package com.hiber.main;

import javax.naming.NamingException;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;

public class Main {

    public static void main(String[] args) throws NamingException {
        //SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(new StandardServiceRegistryBuilder().build());

        ServiceRegistry serviceRegistry;
        SessionFactory sessionFactory;

        Configuration configuration = new Configuration();
        configuration.configure("/com/hiber/main/hibernate.cfg.xml");
        serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
        sessionFactory = configuration.buildSessionFactory(serviceRegistry);

        Session sess = sessionFactory.getCurrentSession();
        sessionFactory.openSession();
        sess.beginTransaction();

        Test1 t = new Test1();
        t.setTest1Ind(1);
        t.setName("name");
        t.setPassword("abcd1234");
        sess.saveOrUpdate(t);

        sess.getTransaction().commit();
        sess.close();


    }

}

Following is the cfg xml:

<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.password">root1234</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.default_schema">test</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="current_session_context_class">thread</property>
    </session-factory>
</hibernate-configuration>

I have included all the dependencies. Hopefully I haven't missed anything. Can't add image currently.

Please anyone have a look at the code and spare a thought on what might be going wrong here. Thanks in advance.

解决方案

1 Remove the dependencies in your project. 2 Add the right dependencies (jars).

这篇关于启动时出现Hibernate异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆