hibernate入门


1. hibernate 开发环境搭建
hibernate 官网: http://hibernate.org.orm
hibernate jar 包作用


1.1 hibernate.cfg.xml 文件的作用
 hibernate的核心配置文件
 配置连接数据库的各种属性
 注册对象关系映射文件


1.2 添加日志服务配置文件
 开发阶段的调试信息
 运行时的日志记录


2. hibernate应用开发步骤
2.1 设计持久化实体类
 setter 和 getter
 公共无参方法
 对象标识符(OID)
 属性是集合类型,必须定义成接口类型,比如List , Map ,Set
 实现Serializable 接口支持序列化


2.2 创建对象关系映射文件
配置对象关系映射文件
Xxx.hbm.xml
注册关系映射文件

2.3 准备数据库表
根据对象关系映射文件生成DDL, 使用SchemaExport工作类:
Configuration config = new Configuration.configure();
SchemaExport se = new SchemaExport(config);
se.create(true,true);

在Hibernate配置文件中添加如下配置:
<property name=”hibernate.hbm2ddl.auto”>create|update</property>

3. 使用hibernateApi 进行持久化操作
创建SessionFactory
获取Session实例
开启事物
利用Session 进行实例持久化操作
提交or回滚事物
关闭Session


Session 类主要用来执行实体的持久化操作
save(Object obj);
update(Object obj)
delete(Object obj)
get(ClassName.class, id)
load(ClassName.class,id)



4. hibernate核心接口和工作机制

4.1 Configuration

负责管理Hibernate的配置信息并根据配置信息启动hibernate

两种配置方法:
 属性文件(.properties)
 XML文件(hibernate.cfg.xml),建议使用
SessionFactory- 实例对应一个数据存储源,SessionFactory特点:
 线程安全
 重量级(需要很大的缓存来存储预定义的sql语句和相应的映射数据)



4.2 Session
接口 - (持久化管理器),Session 特点:
 线程不安全 – 要避免多个线程共享同一个实例
 轻量级 – 创建和销毁不需要消耗太多的资源.
 hibernate一级缓存, 每个Session都有独立缓存.
 Session 通过SessionFactory 打开
 与web层的HttpSession 没有任何关系


4.3 Transaction 接口
 hibernate数据库事物接口, 报过jdbc api 和jta

4.4 Query 和 Criteria 接口
 Query 和 Criteria 都是Hibernate的查询接口
Query 包装了一个HQL(hibernate query language)查询语句
Criteria 擅长执行动态查询








猜你喜欢

转载自wfh6732.iteye.com/blog/2279760