创建hibernate配置时出现java.lang.ExceptionInInitializerError

标签 java eclipse hibernate exception jboss

我正在开发一个 Hibernate 项目,并且我配置了所有内容。

因此,我生成了 beans 和 hbm 文件。

然后,我编写了一个测试类来测试项目(我使用了Client类)

当我执行代码时,抛出以下异常:

java.lang.ExceptionInInitializerError
Caused by: java.lang.NullPointerException
at org.slf4j.LoggerFactory.singleImplementationSanityCheck(LoggerFactory.java:192)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:113)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:269)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:255)
at org.aness.test.HiberM.<clinit>(HiberM.java:12)
Exception in thread "main" 

代码是:

import org.aness.beans.*;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HiberM {
 final static Logger logger = LoggerFactory.getLogger(Client.class);
public static void main(String[]arg){

    Configuration cfg = new Configuration().configure();
    SessionFactory sf =cfg.buildSessionFactory();
    Session s = sf.openSession();
    Transaction tx =s.beginTransaction();

    Client c =new Client();
    c.setRaisonSociale("peugeot algerie");
    c.setNumeroRc("3215468897");
    c.setIdentificationFiscale("888777999");
    c.setAdresseActivite("blida zone atlas");
    c.setTelephone("00213(0)25436996");
    c.setFax("00213(0)25436996");

    s.save(c);
    tx.commit();

   }

 }

这就是整个问题。

hibernate cfg 文件是:*

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
                                     "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="apurement">
 <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
 <property name="hibernate.connection.password">root</property>
 <property name="hibernate.connection.url">jdbc:mysql://localhost/apurement</property>
 <property name="hibernate.connection.username">root</property>
 <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
</session-factory>
</hibernate-configuration>

客户端映射是:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 27 d?c. 2012 11:47:54 by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
    <class name="org.aness.beans.Client" table="client" catalog="apurement">
    <id name="clientId" type="int">
        <column name="client_id" />
        <generator class="assigned" />
    </id>
    <property name="raisonSociale" type="string">
        <column name="raison_sociale" length="150" not-null="true" />
    </property>
    <property name="numeroRc" type="string">
        <column name="numero_rc" length="45" not-null="true" />
    </property>
    <property name="identificationFiscale" type="string">
        <column name="identification_fiscale" length="45" not-null="true" />
    </property>
    <property name="adresseActivite" type="string">
        <column name="adresse_activite" length="250" not-null="true" />
    </property>
    <property name="adressePersonelle" type="string">
        <column name="adresse_personelle" length="250" />
    </property>
    <property name="telephone" type="string">
        <column name="telephone" length="45" not-null="true" />
    </property>
    <property name="fax" type="string">
        <column name="fax" length="45" not-null="true" />
    </property>
    <set name="domiciliations" table="domiciliation" inverse="true" lazy="true" fetch="select">
        <key>
            <column name="client_id" not-null="true" />
        </key>
        <one-to-many class="org.aness.beans.Domiciliation" />
    </set>
    </class>
</hibernate-mapping>

最佳答案

两种可能性:

您的 Hibernate.cfg.xml 不在类路径上。它在哪个文件夹中?

或者您可以尝试更新slf4j jar的版本

关于创建hibernate配置时出现java.lang.ExceptionInInitializerError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14054245/

相关文章:

java - 如何使用jpa映射select中的子查询

java - 十进制值问题

java - 读取 java jar 命令控制台输出

java - Spring Boot Spring Security j_spring_security_check POST 不支持

java - 我不想在 Eclipse 的 servlet 中使用 @WebServlet

Android ScrollView 太长

hibernate - Spring Boot/JPA/Hibernate,如何根据Spring配置文件切换数据库供应商?

java - 我怎样才能缩短这段代码并减少重复?

java - 弹跳球,努力获得超过 1 个球(正在处理)

java - 我如何在Java/eclipse中使用这个东西? (★)