Java 版 (精华区)
发信人: Javor (猪头小队长·乐呵呵), 信区: Java
标 题: hibernate的Configuration的两种常见写法的区别
发信站: 哈工大紫丁香 (Sat Jun 26 18:29:27 2004), 转信
第一种:
SessionFactory sessionFactory = new Configuration()
.addClass( Cat.class ).buildSessionFactory();
第二种:
SessionFactory sessionFactory = new Configuration()
.configure().buildSessionFactory();
这两种写法的第一步都是new Configuration(),这步的时候,会需要
hibernate.properties 这个文件,也就是说不管使用哪种写法,如果
没有这个文件,控制台将会打印hibernate.properties not found,
但是打印了这个信息并不是说hibernate配置错误(例如你采用第二种方
法的时候)。
下面表格中的总结只是一种正确的解决方案,并不是说只可以按照如下
的表格中的方法操作。例如:你也可以在第一种方法中使用hibernate.cfg.xml
如果使用了第一种方法,就不要同时使用第二种,反之亦然。
也就是hibernate.properties和hibernate.cfg.xml不共戴天
------------+---------------------------+---------------------
|第一种 |第二种
------------+---------------------------+---------------------
所用配置文件|xxx.hbm.xml |xxx.hbm.xml
|hibernate.properties |server.xml & hibernate.cfg.xml
------------+---------------------------+---------------------
datasource |写在hibernate.properties文 |写在server.xml中,同时需要配置
|件写在server.xml中中,不需 |hibernate.cfg.xml。使二者的JNDI
|要hibernate.cfg.xml文件。 |名字一致。
|注意的是:在 |
|hibernate.properties中需要 |
|把JNDI Datasource注释掉 |
------------+---------------------------+---------------------
配置文件的 |xxx.hbm.xml需要放到和class |server.xml为tomcat的配置文件,
位置 |同一目录,不管是否有package|他的位置无需再叙,其他配置文件
|都要这样做。 |均需放在WEB-INF/classes目录下
|hibernate.properties放在 |
|WEB-INF/classes目录下 |
------------+---------------------------+---------------------
--
09 问:为什么我总出现这个错误?
Exception in thread"main".java.lang.NoclassDefFoundError:HelloWorld
答:这个问题需要理解了Java底层运行机制才会弄明白,可以说这是一个大问题。
这是classpath的问题,一般的如果你的java文件没有错误,可以这样运行:
java -classpath . HelloWorld
注意:不是HelloWorld.class,-classpath后面有一个空格才是那个点号
※ 修改:·Javor 於 Jun 26 21:05:12 2004 修改本文·[FROM: 202.118.239.*]
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.*]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:5.115毫秒