Hibernate annotation 学习笔记

2018-11-28 15:49

Hibernate -annotation 学习笔记 ---wjt276 [2010-01-18完] 目录

第1课 课程内容 .............................................................................................. 6 第2课 Hibernate UML图 ...................................................................................... 6 第3课 风格 .................................................................................................. 7 第4课 资源 .................................................................................................. 7 第5课 环境准备 .............................................................................................. 7 第6课 第一个示例Hibernate HelloWorld ........................................................................ 7 第7课 建立Annotation版本的HellWorld ........................................................................ 9 第8课 什么是O/R Mapping ................................................................................... 11

一、 二、 三、 四、 五、 六、

定义: ........................................................................................ 11 Hibernate的创始人: ........................................................................... 11 Hibernate做什么: ............................................................................. 12 Hibernate存在的原因: ......................................................................... 12 Hibernate的优缺点: ........................................................................... 12 Hibernate使用范围: ........................................................................... 12

第9课 Hibernate的重点学习:Hibernate的对象关系映射 ........................................................ 12

一、对象---关系映射模式 ................................................................................ 12 二、常用的O/R映射框架: ............................................................................... 13 第10课 模拟Hibernate原理(OR模拟) .......................................................................... 13

一、 二、 一、 二、 三、 四、 五、 六、 七、 八、 九、 十、 十一、 十二、 十三、

项目名称 ...................................................................................... 13 原代码 ........................................................................................ 13 提纲 .......................................................................................... 15 介绍MYSQL的图形化客户端 ...................................................................... 16 Hibernate.cfg.xml:hbm2ddl.auto ............................................................... 16 搭建日志环境并配置显示DDL语句 ................................................................ 16 搭建Junit环境 ................................................................................ 16 ehibernate.cfg.xml : show_sql ................................................................. 16 hibernate.cfg.xml :format_sql ................................................................. 17 表名和类名不同,对表名进行配置 ................................................................ 17 字段名和属性相同 .............................................................................. 17 字段名和属性名不同 ............................................................................ 17 不需要(持久化)psersistence的字段 ........................................................... 18 映射日期与时间类型,指定时间精度 ............................................................ 18 映射枚举类型 ................................................................................ 19

第11课 Hibernate基础配置 .................................................................................. 15

第12课 使用hibernate工具类将对象模型生成关系模型 .......................................................... 19 第13课 ID主键生成策略 ..................................................................................... 20

一、 二、

Xml方式 ...................................................................................... 20 annotateon方式 ............................................................................... 21 元素(主键生成策略) ...................................................................... 20 1、AUTO默认 ....................................................................................... 21 2、IDENTITY ........................................................................................ 22 3、SEQUENCE ........................................................................................ 22 4、为Oracle指定定义的Sequence .................................................................... 22 5、TABLE - 使用表保存id值 ......................................................................... 23 三、

联合主键 ...................................................................................... 24 1、xml方式 ........................................................................................ 24 2、annotation方式 ................................................................................. 27

第14课 Hibernate核心开发接口(重点) ......................................................................... 29

一、

Configuration(AnnotationConfiguration) ........................................................ 29

Hibernate—annotation 学习笔记 第3页 共109页

二、 三、

1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、 一、 二、 三、 四、 五、 一、

SessionFactory ................................................................................ 29 Session ....................................................................................... 29 管理一个数据库的任务单元 .................................................................... 29 save(); ..................................................................................... 29 delete() .................................................................................... 29 load() ...................................................................................... 29 Get() ....................................................................................... 30 load()与get()区别 .......................................................................... 31 update() .................................................................................... 31 saveOrUpdate() .............................................................................. 32 clear() ..................................................................................... 32 flush() .................................................................................. 33 evict() .................................................................................. 33

第15课 持久化对象的三种状态 ................................................................................ 35

瞬时对象(Transient Object): .................................................................. 35 持久化对象(Persistent Object): ............................................................... 35 离线对象(Detached Object): ................................................................... 35 三种状态的区分: .............................................................................. 35 总结: ........................................................................................ 35 一对一 关联映射 ............................................................................... 36

唯一外键关联-单向(unilateralism) .......................................................... 37 唯一外键关联-双向 ........................................................................ 40 主键关联-单向(不重要) .................................................................... 41 主键关联-双向(不重要) .................................................................... 44 联合主键关联(Annotation方式) ............................................................. 44 Component关联映射: ...................................................................... 45 User实体类: ............................................................................. 45 Contact值对象: .......................................................................... 46 xml--User映射文件(组件映射): ............................................................ 46 annotateon注解 ........................................................................... 46 导出数据库输出SQL语句:.................................................................. 47 数据表结构: ............................................................................. 47 组件映射数据保存: ....................................................................... 47 对象模型图: ............................................................................. 48 关系模型: ............................................................................... 48 关联映射的本质: ......................................................................... 48 实体类 ................................................................................... 48 xml方式:映射文件: ...................................................................... 49 annotation ............................................................................... 50 多对一 存储(先存储group(对象持久化状态后,再保存user)): ................................. 50 重要属性-cascade(级联):.................................................................. 51 多对一 加载数据 ......................................................................... 51 对象模型: ............................................................................... 52 关系模型: ............................................................................... 52 多对一、一对多的区别: ................................................................... 52 实体类 ................................................................................... 52 xml方式:映射 ............................................................................ 52

第16课 关系映射(重点) ...................................................................................... 36

(一) (二) (三) (四) (五) 二、

(一) (二) (三) (四) (五) (六) (七) (八) 三、

(一) (二) (三) (四) (五) (六) (七) (八) (九) 四、

(一) (二) (三) (四) (五)

component(组件)关联映射 ..................................................................... 45

多对一 – 单向 ................................................................................ 48

一对多 - 单向 ................................................................................. 51

Hibernate—annotation 学习笔记 第4页 共109页

(六) (七) (八) (九) (十) (十一) (十二) 五、

(一) (二) (三) (四) (五) (六) 六、

(一) (二) (三) (四) (五) (六) (七) (八) (九) (十) 七、

(一) (二) 八、 九、 十、

annotateon注解 ........................................................................... 53 导出至数据库(hbm?ddl)生成的SQL语句: .................................................... 53 一对多 单向存储实例: .................................................................... 53 生成的SQL语句: ......................................................................... 54 一对多,在一的一端维护关系的缺点: ........................................................ 54 一对多 单向数据加载: .................................................................... 54 加载生成SQL语句: ....................................................................... 54 xml方式:映射 ............................................................................ 55 annotateon方式注解 ....................................................................... 55 数据保存: ............................................................................... 56 关于inverse属性: ....................................................................... 56 Inverse和cascade区别: .................................................................. 56 一对多双向关联映射总结:.................................................................. 57 实例场景: ............................................................................... 57 对象模型: ............................................................................... 57 关系模型: ............................................................................... 57 实体类 ................................................................................... 57 xml方式:映射 ............................................................................ 58 annotation注解方式 ....................................................................... 58 生成SQL语句 ............................................................................. 59 数据库表及结构: ......................................................................... 59 多对多关联映射 单向数据存储: ............................................................. 59 多对多关联映射 单向数据加载: ............................................................. 61 xml方式:映射 ............................................................................ 61 annotation注解方式 ....................................................................... 62

一对多 - 双向 ................................................................................. 54

多对多 - 单向 ................................................................................. 57

多对多 - 双向 ................................................................................. 61

关联关系中的CRUD_Cascade_Fetch ................................................................ 63 集合映射 ...................................................................................... 63 继承关联映射 .................................................................................. 64

继承关联映射的分类: ..................................................................... 64 对象模型: ............................................................................... 64 单表继承SINGLE_TABLE: ................................................................... 64 具体表继承JOINED: ....................................................................... 70 类表继承TABLE_PER_CLASS .................................................................. 72 三种继承关联映射的区别:.................................................................. 74

(一) (二) (三) (四) (五) (六) 一、 二、 三、 四、 五、 一、 二、 三、 一、 二、 三、

第17课 hibernate树形结构(重点)............................................................................. 75

节点实体类: .................................................................................. 75 xml方式:映射文件: ........................................................................... 75 annotation注解 ............................................................................... 76 测试代码: .................................................................................... 76 相应的类代码: ................................................................................ 76 设计 .......................................................................................... 79 代码: ........................................................................................ 79 注意 .......................................................................................... 80 Hibernate可以使用的查询语言 ................................................................... 80 实例一 ........................................................................................ 80 实体一测试代码: .............................................................................. 82

第18课 作业-学生、课程、分数的映射关系 ..................................................................... 79

第19课 Hibernate查询(Query Language) ....................................................................... 80

Hibernate—annotation 学习笔记 第5页 共109页

四、 五、 一、 二、 三、 四、 五、 六、 七、 一、 一、 二、 三、

实例二 ........................................................................................ 86 实例二测试代码 ................................................................................ 87 实体代码: .................................................................................... 89 Restrictions用法.............................................................................. 90 工具类Order提供设置排序方式 .................................................................. 91 工具类Projections提供对查询结果进行统计与分组操作 ............................................ 91 QBC分页查询 .................................................................................. 92 QBC复合查询 .................................................................................. 92 QBC离线查询 .................................................................................. 92 实例代码 ...................................................................................... 92 query.iterate查询数据 ......................................................................... 93 query.list()和query.iterate()的区别 ........................................................... 94 两次query.list().............................................................................. 94

第20课 Query by Criteria(QBC) .............................................................................. 89

第21课 Query By Example(QBE) ............................................................................... 92 第22课 Query.list与query.iterate(不太重要) ................................................................ 93

第23课 性能优化策略 ........................................................................................ 95 第24课 hibernate缓存 ...................................................................................... 95

一、 二、

1、 2、 3、 4、 5、 6、 7、 8、 三、 四、 一、

1、 2、 二、 三、 一、

1、 2、 3、 4、 5、 二、

Session级缓存(一级缓存) ....................................................................... 95 二级缓存 ...................................................................................... 95 二级缓存的配置和使用: ...................................................................... 96 二级缓存的开启: ............................................................................ 96 指定二级缓存产品提供商: .................................................................... 96 使用二级缓存 ................................................................................ 97 应用范围 .................................................................................... 99 二级缓存的管理: ............................................................................ 99 二级缓存的交互 ............................................................................. 100 总结 ....................................................................................... 102 查询缓存 ..................................................................................... 102 缓存算法 ..................................................................................... 103 数据库的隔离级别:并发性作用。 ............................................................... 104 Mysql查看数据库隔离级别: ................................................................. 104 Mysql数据库修改隔离级别: ................................................................. 104 事务概念(ACID) ............................................................................... 104 事务并发时可能出现问题 ....................................................................... 104 悲观锁 ....................................................................................... 105 悲观锁的实现 ............................................................................... 105 悲观锁的适用场景: ......................................................................... 105 实例: ..................................................................................... 105 悲观锁的使用 ............................................................................... 106 执行输出SQL语句: ......................................................................... 106 乐观锁 ....................................................................................... 107

第25课 事务并发处理 ....................................................................................... 104

第26课 hibernate悲观锁、乐观锁 ............................................................................ 105


Hibernate annotation 学习笔记.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:儿童文明礼仪小故事(共4篇)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: