所以我遇到了hibernate的问题,因为它不知何故不再起作用了。 不知怎的,它工作了很长时间,现在它停止了工作。所以我要么愚蠢也要盲目。或两者? :P 所以这是我的代码:
configFile = System.getProperty("user.dir");
configFile += File.separator + "src"
+ File.separator + "main"
+ File.separator + "resources"
+ File.separator;
configFile += "hibernate.cfg.xml";
File file = new File(configFile);
System.out.println(file.exists());
System.out.println(file.getAbsolutePath());
Configuration configuration = new Configuration();
configuration.configure(configFile);
控制台甚至说该文件存在:
true
/Users/Bernhard1/Dropbox/Ausgaben2/src/main/resources/hibernate.cfg.xml
但我得到了这个例外:
Exception in thread "main" org.hibernate.HibernateException: /Users/Bernhard1/Dropbox/Ausgaben2/src/main/resources/hibernate.cfg.xml not found
有什么想法吗?
答案 0 :(得分:0)
Just use: configuration.configure("hibernate.cfg.xml"); And give it a try. Hibernate will pick this file up from resources folder.
答案 1 :(得分:0)
如果您正在使用Maven项目,那么只需尝试加载这样的文件:
Configuration configuration = new Configuration();
configuration.configure("hibernate.cfg.xml");
假设它是Maven项目,那么该文件将被放置在类target/classes
目录的类路径的根目录中。
Hibernate从类路径的根目录中查找文件,然后它应该可以工作。 Hibernate不会尝试根据您尝试的绝对路径查找文件,这是不正确的。