Hibernate示例程序中的java.lang.NullPointerException
我正在尝试运行hibernate的一个示例应用程序,它在运行时给了我一个错误: log4j:WARN找不到记录器(org.hibernate.cfg.Environment)的附加程序。Hibernate示例程序中的java.lang.NullPointerException,java,hibernate,orm,Java,Hibernate,Orm,我正在尝试运行hibernate的一个示例应用程序,它在运行时给了我一个错误: log4j:WARN找不到记录器(org.hibernate.cfg.Environment)的附加程序。 log4j:警告请正确初始化log4j系统。 线程“main”java.lang.NullPointerException中出现异常 在transaction.rollback()处 这在Main.java中: public class Main { public static void main(Strin
log4j:警告请正确初始化log4j系统。
线程“main”java.lang.NullPointerException中出现异常 在transaction.rollback()处 这在Main.java中:
public class Main {
public static void main(String[] args) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
Address address = new Address("ABC", "Delhi", "TN", "110001");
Student student = new Student("kumar", address);
session.save(student);
transaction.commit();
} catch (HibernateException e) {
transaction.rollback();
e.printStackTrace();
} finally {
session.close();
}
应该改变
transaction.rollback();
到
尽可能让事务的分配引发异常
如果您想删除Log4J消息,可以添加对的调用
BasicConfigurator.configure();
要设置基本日志记录您知道它在哪一行失败吗?您可以从异常输出中看到,它是在调用transaction.rollback()时从主方法抛出的,我应该在其中写入这一行:BasicConfigurator.configure();让它成为main方法的第一行,您可以在这里阅读更多关于log4j的内容-但是请注意,它被logback“替代”
BasicConfigurator.configure();