图书介绍
精通Hibernate Java对象持久化技术详解PDF|Epub|txt|kindle电子书版本网盘下载
![精通Hibernate Java对象持久化技术详解](https://www.shukui.net/cover/64/33109328.jpg)
- 孙卫琴编著;飞思科技产品研发中心监制 著
- 出版社: 北京:电子工业出版社
- ISBN:7121011360
- 出版时间:2005
- 标注页数:599页
- 文件大小:27MB
- 文件页数:614页
- 主题词:JAVA语言-程序设计
PDF下载
下载说明
精通Hibernate Java对象持久化技术详解PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
目录1
第1章 Java对象持久化技术概述1
1.1 应用程序的分层体系结构1
1.1.1 区分物理层和逻辑层2
1.1.2 软件层的特征3
1.1.3 软件分层的优点4
1.1.4 软件分层的缺点4
1.1.5 Java应用的持久化层5
1.2 软件的模型6
1.2.1 概念模型7
1.2.2 关系数据模型8
1.2.3 域模型10
1.2.4 域对象10
1.2.5 域对象之间的关系11
1.2.6 域对象的持久化概念16
1.3 直接通过JDBC API来持久化实体域对象17
19.1 实现业务数据 519
1.4 ORM简介25
1.4.1 对象-关系映射的概念27
1.4.2 ORM中间件的基本使用方法29
1.4.3 常用的ORM中间件32
1.5 实体域对象的其他持久化模式32
1.5.1 主动域对象模式33
1.5.2 JDO模式35
1.5.3 CMP模式35
1.6 Hibernate API简介36
1.6.1 Hibernate的核心接口37
1.6.2 回调接口39
1.6.3 Hibernate映射类型接口40
1.6.4 可供扩展的接口41
1.7 小结42
第2章 Hibernate入门45
2.1 创建Hibernate的配置文件46
2.2 创建持久化类47
2.3 创建数据库Schema49
2.4 创建对象-关系映射文件50
2.4.1 映射文件的文档类型定义(DTD)51
2.4.2 把Customer持久化类映射到CUSTOMERS表52
2.5 通过HibernateAPI操纵数据库56
2.5.1 Hibernate的初始化59
2.5.2 访问Hibernate的Session接口61
2.6 运行helloapp应用65
2.6.1 创建运行本书范例的系统环境65
2.6.2 创建helloapp应用的目录结构69
2.6.3 把helloapp应用作为独立应用程序运行70
2.6.4 把helloapp应用作为Java Web应用运行74
2.7 小结76
第3章 hbm2java和hbm2ddl工具79
3.1 创建对象-关系映射文件79
3.1.1 定制持久化类81
3.1.2 定制数据库表84
3.2 建立项目的目录结构87
3.3 运行hbm2java工具90
3.4 运行hbm2ddl工具92
3.5 小结95
第4章 对象-关系映射基础97
4.1 持久化类的属性及访问方法97
4.1.1 基本类型属性和包装类型属性98
4.1.2 Hibernate访问持久化类属性的策略100
4.1.3 在持久化类的访问方法中加入程序逻辑100
4.1.4 设置派生属性103
4.1.5 控制insert和update语句104
4.2 处理SQL引用标识符105
4.3 创建命名策略106
4.4 设置命名Schema108
4.5 设置类的包名109
4.6 运行本章的范例程序110
4.7 小结117
5.1 关系数据库按主键区分不同的记录119
5.1.1 把主键定义为自动增长标识符类型119
第5章 映射对象标识符119
5.1.2 从序列(Sequence)中获取自动增长的标识符120
5.2 Java语言按内存地址区分不同的对象121
5.3 Hibernate用对象标识符(OID)来区分对象122
5.4 Hibernate的内置标识符生成器的用法124
5.4.1 increment标识符生成器127
5.4.2 identity标识符生成器130
5.4.3 sequence标识符生成器131
5.4.4 hilo标识符生成器132
5.4.5 native标识符生成器134
5.5 映射自然主键135
5.5.1 映射单个自然主键135
5.5.2 映射复合自然主键136
5.6 小结140
第6章 映射一对多关联关系141
6.1 建立多对一的单向关联关系142
6.1.1 〈many-to-one〉元素的not-null属性147
6.1.2 级联保存和更新149
6.2 映射一对多双向关联关系150
6.2.1 〈set〉元素的inverse属性155
6.2.2 级联删除158
6.2.3 父子关系158
6.3 映射一对多双向自身关联关系160
6.4 改进持久化类166
6.5 小结171
7.1 Java对象在JVM中的生命周期173
第7章 操纵持久化对象173
7.2 理解Session的缓存175
7.3 在Hibernate应用中Java对象的状态178
7.3.1 临时对象的特征179
7.3.2 持久化对象的特征180
7.3.3 游离对象的特征181
7.4.1 Session的save()方法182
7.4 Session的保存、更新、删除和查询方法182
7.4.2 Session的update()方法184
7.4.3 Session的saveOrUpdate()方法187
7.4.4 Session的load()和get()方法188
7.4.5 Session的delete()方法188
7.5 级联操纵对象图189
7.5.1 级联保存临时对象193
7.5.2 更新持久化对象194
7.5.3 持久化临时对象194
7.5.4 更新游离对象196
7.5.5 遍历对象图197
7.6 与触发器协同工作198
7.7 利用拦截器(Interceptor)生成审计日志200
7.8 小结207
第8章 映射组成关系209
8.1 建立精粒度对象模型210
8.2 建立粗粒度关系数据模型211
8.3 映射组成关系212
8.3.1 区分值(Value)类型和实体(Entity)类型215
8.3.2 在应用程序中访问具有组成关系的持久化类216
8.4 映射复合组成关系220
8.5 小结222
9.1.1 Java基本类型的Hibernate映射类型223
第9章 Hibernate的映射类型223
9.1 Hibernate的内置映射类型223
9.1.2 Java时间和日期类型的Hibernate映射类型224
9.1.3 Java大对象类型的Hibernate映射类型225
9.1.4 JDK自带的个别Java类的Hibernate映射类型226
9.1.5 使用Hibernate内置映射类型227
9.2 客户化映射类型229
9.2.1 用客户化映射类型取代Hibernate组件232
9.2.2 用UserType映射枚举类型235
9.2.3 实现CompositeUserType接口239
9.3 运行本章范例程序243
9.4 小结253
第10章 Hibernate的检索策略255
10.1 Hibernate的检索策略简介256
10.2 类级别的检索策略259
10.2.1 立即检索260
10.2.2 延迟检索260
10.3 一对多和多对多关联的检索策略263
10.3.1 立即检索264
10.3.2 延迟检索264
10.3.3 批量延迟检索和批量立即检索265
10.3.4 迫切左外连接检索267
10.4 多对一和一对一关联的检索策略268
10.4.1 迫切左外连接检索269
10.4.2 延迟检索271
10.4.3 立即检索272
10.4.4 批量延迟检索和批量立即检索273
10.5 Hibernate对迫切左外连接检索的限制277
10.6 在应用程序中显式指定迫切左外连接检索策略279
10.7 小结279
第11章 Hibernate的检索方式281
11.1 Hibernate的检索方式简介281
11.1.1 HQL检索方式284
11.1.2 QBC检索方式285
11.1.3 SQL检索方式288
11.1.4 关于本章范例程序288
11.1.5 使用别名289
11.1.6 多态查询290
11.1.7 对查询结果排序291
11.1.8 分页查询291
11.1.9 检索单个对象293
11.1.10 在HQL查询语句中绑定参数294
11.1.11 在映射文件中定义命名查询语句298
11.2 设定查询条件299
11.2.1 比较运算300
11.2.2 范围运算301
11.2.3 字符串模式匹配302
11.2.4 逻辑运算303
11.3 连接查询304
11.3.1 默认情况下关联级别的运行时检索策略305
11.3.2 迫切左外连接306
11.3.3 左外连接309
11.3.4 内连接 .313
11.3.5 迫切内连接317
11.3.6 隐式内连接319
11.3.7 右外连接320
11.3.8 使用SQL风格的交叉连接和隐式内连接322
11.3.9 关联级别运行时的检索策略323
11.4 报表查询325
11.4.1 投影查询325
11.4.2 使用聚集函数328
11.4.3 分组查询329
11.4.4 优化报表查询的性能332
11.5 高级查询技巧332
11.5.1 动态查询332
11.5.2 集合过滤334
11.5.3 子查询337
11.5.4 本地SQL查询339
11.6 查询性能优化340
11.6.1 iterate()方法340
11.6.2 查询缓存341
11.7 小结342
第12章 数据库事务与并发345
12.1 数据库事务的概念345
12.2 声明事务边界346
12.2.1 在mysql.exe程序中声明事务348
12.2.2 通过JDBC API声明事务边界350
12.2.3 通过HibernateAPI声明事务边界351
12.3 多个事务并发运行时的并发问题355
12.3.1 第一类丢失更新357
12.3.2 脏读357
12.3.4 不可重复读358
12.3.3 虚读358
12.3.5 第二类丢失更新359
12.4.1 锁的多粒度性及自动锁升级360
12.4 数据库系统的锁的基本原理360
12.4.2 锁的类型和兼容性361
12.4.3 死锁及其防止办法362
12.5 数据库的事务隔离级别364
12.5.1 在mysql.exe程序中设置隔离级别366
12.5.2 在应用程序中设置隔离级别366
12.6 在应用程序中采用悲观锁和乐观锁366
12.6.1 利用数据库系统的独占锁来实现悲观锁367
12.6.2 由应用程序实现悲观锁373
12.6.3 利用Hibernate的版本控制来实现乐观锁374
12.6.4 实现乐观锁的其他方法380
12.7 小结381
第13章 管理Hibernate的缓存383
13.1 缓存的基本原理383
13.1.1 持久化层的缓存的范围384
13.1.2 持久化层的缓存的并发访问策略386
13.2 Hibernate的二级缓存结构388
13.3 管理Hibernate的第一级缓存389
13.4 管理Hibernate的第二级缓存393
13.4.1 配置进程范围内的第二级缓存394
13.4.2 配置群集范围内的第二级缓存398
13.4.3 在应用程序中管理第二级缓存401
13.5 运行本章的范例程序402
13.6 小结406
第14章 映射继承关系407
14.1 继承关系树的每个具体类对应一个表408
14.1.1 创建映射文件409
14.1.2 操纵持久化对象411
14.2 继承关系树的根类对应一个表414
14.2.1 创建映射文件415
14.2.2 操纵持久化对象417
14.3 继承关系树的每个类对应一个表418
14.3.1 创建映射文件419
14.3.2 操纵持久化对象421
14.4 选择继承关系的映射方式423
14.5 映射多对一多态关联428
14.6 小结430
第15章 Java集合类433
15.1.1 Set的一般用法434
15.1 Set(集)434
15.1.2 HashSet类435
15.1.3 TreeSet类437
15.1.4 向Set中加入持久化类的对象441
15.2 List(列表)442
15.3 Map(映射)444
15.4 小结448
第16章 映射值类型集合449
16.1 映射Set(集)449
16.2 映射Bag(包)453
16.3 映射List(列表)456
16.4 映射Map459
16.5 对集合排序462
16.5.1 在数据库中对集合排序462
16.5.2 在内存中对集合排序464
16.6 映射组件类型集合467
16.7 小结474
第17章 映射实体关联关系475
17.1 映射一对一关联475
17.1.1 按照外键映射476
17.1.2 按照主键映射480
17.2 映射单向多对多关联483
17.3.1 关联两端使用〈set〉元素488
17.3 映射双向多对多关联关系488
17.3.2 在inverse端使用〈bag〉元素490
17.3.3 使用组件类集合494
17.3.4 把多对多关联分解为两个一对多关联499
17.4 小结501
第18章 Hibernate高级配置503
18.1 配置数据库连接池503
18.1.1 使用默认的数据库连接池506
18.1.2 使用配置文件指定的数据库连接池507
18.1.3 从容器中获得数据源508
18.1.4 由Java应用本身提供数据库连接510
18.2 配置事务类型511
18.3 把SessionFactory与JNDI绑定512
18.4 使用XML格式的配置文件513
18.5 小结516
第19章 Hibernate与Struts框架517
19.2 实现业务逻辑522
19.3 netstore应用的订单业务534
19.4 小结538
第20章 Hibernate与EJB组件541
20.1 创建EJB组件541
20.1.1 编写Remote接口541
20.1.2 编写Home接口543
20.1.3 编写Enterprise Java Bean类543
20.2 在业务代理类中访问EJB组件546
20.3 发布J2EE应用551
20.3.1 在JBoss-Tomcat上部署EJB组件551
20.3.2 在JBoss-Tomcat上部署Web应用553
20.3.3 在JBoss-Tomcat上部署J2EE应用554
20.4 小结556
附录A 标准SQL语言的用法557
A.1 数据完整性558
A.1.1 实体完整性558
A.1.2 域完整性558
A.1.3 参照完整性558
A.2 DDL数据定义语言559
A.3 DML数据操纵语言561
A.4 DQL数据查询语言561
A.4.1 简单查询562
A.4.2 连接查询563
A.4.3 子查询565
A.4.4 联合查询566
A.4.5 报表查询566
附录B Java语言的反射机制569
B.1 Java ReflectionAPI简介569
B.2 运用反射机制来持久化Java对象572
附录C 用XDoclet工具生成映射文件581
C.1 创建带有@hibernate标记的Java源文件581
C.2 建立项目的目录结构586
C.3 运行XDoclet工具589
附录D 发布和运行netstore应用591
D.1 运行netstore所需的软件591
D.2 netstore应用的目录结构592
D.3 安装SAMPLEDB数据库593
D.4 发布netstore应用594
D.4.1 在工作模式1下发布netstore应用594
D.4.2 在工作模式2下发布netstore应用594
D.5 运行netstore应用595
参考文献599