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
今日推荐
周排行