面试遇到这个问题,搞了半天就这些东西
Hibernate.cfg.xml文件必须被放在你的classpath里。
在你的程序里使用hibernate必须有下面几个步骤:
1、建立一个Hibernate configuration对象
2、使用Hibernate configuration对象来建立一个Hibernate factory对象。
3、使用Hibernate factory对象来建立一个Hibernate session对象。
4、使用Hibernate session对象来开始一个事务(可选)
5、使用Hibernate session对象来建立、读取、更新、删除数据库里的数据
6、提交事务(可选)
7、关闭session
Hibernate最佳实践是建立和缓存Hibernate factory来提高性能。所以我们最好在第一步和第二步建立一
个Struts plug-in 来在servlet context中缓存Hibernate factory。如List5所示:
Hibernate是一个功能非常强大的产品,还有一些未知的功能留给你们去发现。我们简单的例子只是关于
读这个行为,但是CRUD里的其它功能也是一样的简单。功能性的更新和读取指定对象一样简单,调用
JavaBean setter,调用session的commit方法。Hibernate负责帮你生成SQL语句并且更新数据库。一个删
除也是非常的简单—session.delete(element)便是所有要做的!最后建立只是需要初始化对象,调用
setters方法,然后调用session.save(element)。
Hibernate最佳实践推荐缓存Hibernate factory对象。我们选择通过Struts plug-in来建立并且缓存
factory。你也可以选择使用其它方法在你的类里缓存它。
虽然这个摘录能很好的满足你的需要,它还有其它的一些缺点。第一,我们在Struts Action里使用了
Hibernate。迁移到其它的持久层框架上便将需要我们改变每个使用Hibernate的Action。第二,我们的持
久层紧密的与表示层连接。这种关联使我们在其它表示层机制中没有重新使用持久层逻辑的机会,例如批
处理程序。
虽然有许多改进的空间,当你不需要重用表现层的时候,这个摘录还是很适合的。