我正在学习在我的Java应用程序中使用Hibernate。下面的sessionFactory是从hibernate.cfg.xml文件位置的配置开始的,但是它仍然在抱怨:resources/hibernate.cfg.xml not found
“”文件夹是java项目.中"src“文件夹的子目录。
public class HibernateUtil
{
private static final SessionFactory sessionFactory = new Configuration().configure("resources/hibernate.cfg.xml").buildSessionFactory();
public static void main(String[] args)
{
Session session = sessionFactory.getCurrentSession();
Transaction tx = session.beginTransaction();
Book book1 = new Book("John Wright", "Unknown Title");
session.save(book1);
tx.commit();
System.out.println("Book committed: book title: " + book1.getTitle() + ", author is: " + book1.getAuthor());
sessionFactory.close();
}
}我在pom.xml中使用的hibernate依赖项如下所示,但intelliJ警告说,buildSessionFactory()方法通过突出显示“清除”而被弃用了。
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.5.Final</version>
</dependency>我发布的错误信息,从我的I在最底层,以及。出什么问题了?谢谢
10:43:12.737 [main] INFO o.h.annotations.common.Version - HCANN000001: Hibernate Commons Annotations {4.0.4.Final}
10:43:12.746 [main] INFO org.hibernate.Version - HHH000412: Hibernate Core {4.3.1.Final}
10:43:12.747 [main] INFO org.hibernate.cfg.Environment - HHH000206: hibernate.properties not found
10:43:12.749 [main] INFO org.hibernate.cfg.Environment - HHH000021: Bytecode provider name : javassist
Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:259)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:116)
Caused by: org.hibernate.HibernateException: resources/hibernate.cfg.xml not found
at org.hibernate.internal.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:173)
at org.hibernate.cfg.Configuration.getConfigurationInputStream(Configuration.java:2093)
at org.hibernate.cfg.Configuration.configure(Configuration.java:2074)
at persistence.HibernateUtil.<clinit>(HibernateUtil.java:14)
... 3 more
10:43:12.763 [main] INFO org.hibernate.cfg.Configuration - HHH000043: Configuring from resource: resources/hibernate.cfg.xml
10:43:12.763 [main] INFO org.hibernate.cfg.Configuration - HHH000040: Configuration resource: resources/hibernate.cfg.xml
Process finished with exit code 1发布于 2014-06-05 18:31:57
谢谢大家的答复。
终于,我想明白了。下面是我在HibernateUtil类中的配置。因为我使用的是Hibernate 4.3.5,所以我用最新的方法替换了不推荐的方法。我还把我的hibernate.cfg.xml搬到了src/main/java/resources。
static {
try {
Configuration configuration = new Configuration().configure("/resources/hibernate.cfg.xml");
StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
sessionFactory = configuration.buildSessionFactory(builder.build());
} catch (HibernateException ex) {
System.err.println("Initial sessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}https://stackoverflow.com/questions/24065817
复制相似问题