Hibernate常用代码
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()
关联映射中对关联属性的加载
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。