码迷,mamicode.com
首页 > Web开发 > 详细

Hibernate常用代码

时间:2015-05-08 23:44:08      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:

1.Hibernate使用步骤
1.导入Hibernate包,以及数据库驱动包。
2.引入Hibernate主配置文件hibernate.cfg.xml。
3.创建实体类
4.创建映射关系文件
5.使用Hibernate常用API执行增删改查操作

2.创建HibernateUtil
创建HibernateUtil工具类,提供获取Session和关闭Session的方法
在HibernateUtil中使用ThreadLocal管理Session

3.sequence
sequence是采用序列方式生成主键,适用于Oracle数据库。
其配置语法为
<generator class="squence">
<param name="squence">序列名</param>
</generator>

4.identity
identity是采用数据库自增长机制生成主键,适用于Oracle之外的其他数据库。
其配置语法
<generator class="identity">
</generator>

5.native
native是根据当前配置的数据库方言,自动选择sequence或则identity
其配置语法为:
<generator class="native">
<param name="sequence">序列名</param>
</generator>

6.increment
increment不是采用数据库自身的机制来生成主键,而是Hibernate提供的一种生成主键的方式。它会获取当前表中
主键的最大值,然后加1作为新的主键。
其配置语法为
<generator class="increment">
</generator>
注意
这种方式并发量高时存在问题,可能会生成重复的主键值,因此不推荐使用。

7.assigned
assigned是Hibernate不负责任生成主键,需要程序员自己处理主键的生成
其配置语法为:
<generator class="assigned">
</generator>

8.uuid/hilo
uuis/hilo是采用uuid或hilo算法生成一个主键值,这个主键值是一个不规则的长数字。
其配置语法为
<generator class="uuid">
</generator>
注意
这种方式生成的主键可以保证不重复,但是没有规律,因此不能按主键排序

9.一级缓存管理
session.evict(obj);
将obj从一级缓存中移除
session.clear();
清除一级缓存中所有的obj.
session.close();
关闭Session,释放缓存空间。

10.采用了延迟加载的方法
session.load()
query.iterate()
关联映射中对关联属性的加载

Hibernate常用代码

标签:

原文地址:http://www.cnblogs.com/Crow00/p/4489014.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!