图书介绍
Hibernate实战 第2版PDF|Epub|txt|kindle电子书版本网盘下载
- (德)CHRISTIANBAUER,(澳)GAVINKING,(美)GARYGREGORY著;蒲成译 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302448082
- 出版时间:2016
- 标注页数:512页
- 文件大小:234MB
- 文件页数:531页
- 主题词:JAVA语言-程序设计
PDF下载
下载说明
Hibernate实战 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第Ⅰ部分 ORM入门1
第1章 理解对象/关系持久化1
1.1 持久化的定义4
1.1.1 关系型数据库4
1.1.2 理解SQL5
1.1.3 在Java中使用SQL5
1.2 范式不匹配7
1.2.1 粒度问题8
1.2.2 子类型问题10
1.2.3 标识问题11
1.2.4 与关联相关的问题12
1.2.5 数据导航的问题13
1.3 ORM和JPA14
1.4 本章小结15
第2章 开启一个项目17
2.1 Hibernate介绍17
2.2 使用JPA的“Hello World”18
2.2.1 配置一个持久化单元18
2.2.2 编写一个持久化类20
2.2.3 存储和加载消息21
2.3 原生Hibernate配置23
2.4 本章小结26
第3章 域模型和元数据27
3.1 CaveatEmptor示例应用程序28
3.1.1 一个分层架构28
3.1.2 分析业务域29
3.1.3 CaveatEmptor域模型30
3.2 实现域模型31
3.2.1 处理关注点渗漏31
3.2.2 透明及自动持久化32
3.2.3 编写可持久化类33
3.2.4 实现POJO关联36
3.3 域模型元数据39
3.3.1 基于注解的元数据40
3.3.2 应用Bean验证规则42
3.3.3 使用XML文件外部化元数据45
3.3.4 在运行时访问元数据48
3.4 本章小结51
第Ⅱ部分 映射策略55
第4章 映射持久化类55
4.1 理解实体和值类型55
4.1.1 细粒度域模型55
4.1.2 定义应用程序概念56
4.1.3 区分实体和值类型57
4.2 映射具有标识的实体58
4.2.1 理解Java标识和相等性58
4.2.2 第一个实体类和映射59
4.2.3 选择一个主键60
4.2.4 配置键生成器61
4.2.5 标识符生成器策略63
4.3 实体映射选项66
4.3.1 控制名称66
4.3.2 动态SQL生成69
4.3.3 让实体不可变69
4.3.4 将一个实体映射到子查询70
4.4 本章小结71
第5章 映射值类型73
5.1 映射基本属性73
5.1.1 重写基本属性的默认设置74
5.1.2 自定义属性访问75
5.1.3 使用派生属性77
5.1.4 转换列值77
5.1.5 生成的以及默认的属性值78
5.1.6 时序属性79
5.1.7 映射枚举80
5.2 映射可嵌入组件80
5.2.1 数据库架构81
5.2.2 让类可嵌入81
5.2.3 重写嵌入属性84
5.2.4 映射嵌套的可嵌入组件85
5.3 使用转换器映射Java和SQL类型87
5.3.1 内置类型87
5.3.2 创建自定义JPA转换器92
5.3.3 使用UserTypes扩展Hibernate98
5.4 本章小结104
第6章 映射继承关系105
6.1 每个带有隐式多态的具体类使用一个表105
6.2 每个带有联合的具体类使用一个表107
6.3 每个类层次结构使用一个表109
6.4 每个带有联结的子类使用一个表112
6.5 混合继承策略115
6.6 可嵌入类的继承117
6.7 选择一种策略119
6.8 多态关联120
6.8.1 多态多对一关联121
6.8.2 多态集合123
6.9 本章小结124
第7章 映射集合和实体关联125
7.1 集、包、列表及值类型映射125
7.1.1 数据库架构126
7.1.2 创建和映射一个集合属性126
7.1.3 选择集合接口127
7.1.4 映射集128
7.1.5 映射标识符包129
7.1.6 映射列表130
7.1.7 映射一个映射132
7.1.8 排列和排序集合132
7.2 组件集合135
7.2.1 组件实例的相等性136
7.2.2 组件集138
7.2.3 组件包139
7.2.4 组件值的映射141
7.2.5 作为映射键的组件142
7.2.6 可嵌入组件中的集合143
7.3 映射实体关联144
7.3.1 最简单的可能关联145
7.3.2 让其变成双向的146
7.3.3 级联状态147
7.4 本章小结153
第8章 高级实体关联映射155
8.1 一对一关联155
8.1.1 共享主键156
8.1.2 外主键生成器158
8.1.3 使用一个外键联结列161
8.1.4 使用一个联结表162
8.2 一对多关联164
8.2.1 考虑一对多包164
8.2.2 单向和双向列表映射166
8.2.3 具有联结表的可选一对多168
8.2.4 可嵌入类中的一对多关联169
8.3 多对多和三元关联171
8.3.1 单向和双向多对多关联172
8.3.2 具有中间实体的多对多关联173
8.3.3 具有组件的三元关联177
8.4 具有映射的实体关联180
8.4.1 具有属性键的一对多关联180
8.4.2 键/值三元关系181
8.5 本章小结182
第9章 复杂和遗留模式185
9.1 改进数据库架构186
9.1.1 添加辅助数据库对象186
9.1.2 SQL约束189
9.1.3 创建索引194
9.2 处理遗留键195
9.2.1 映射一个自然主键195
9.2.2 映射一个组合主键196
9.2.3 组合主键中的外键198
9.2.4 引用组合主键的外键201
9.2.5 引用非主键的外键202
9.3 将属性映射到辅助表203
9.4 本章小结204
第Ⅲ部分 事务性数据处理207
第10章 管理数据207
10.1 持久化生命周期207
10.1.1 实体实例状态208
10.1.2 持久化上下文209
10.2 EntiryManager接口211
10.2.1 规范的工作单元211
10.2.2 使数据持久化212
10.2.3 检索和修改持久化数据213
10.2.4 得到一个引用215
10.2.5 让数据变成瞬时的216
10.2.6 刷新数据217
10.2.7 复制数据217
10.2.8 在持久化上下文中缓存218
10.2.9 刷新持久化上下文220
10.3 处理分离的状态221
10.3.1 分离实例的标识221
10.3.2 实现相等性方法223
10.3.3 分离实体实例225
10.3.4 合并实体实例226
10.4 本章小结227
第11章 事务和并发229
11.1 事务的要素229
11.1.1 ACID属性230
11.1.2 数据库和系统事务230
11.1.3 使用JTA的编程式事务230
11.1.4 处理异常232
11.1.5 声明式事务分界234
11.2 控制并发访问234
11.2.1 理解数据库级别的并发235
11.2.2 乐观并发控制239
11.2.3 显式悲观锁245
11.2.4 避免死锁248
11.3 非事务性数据访问249
11.3.1 在自动提交模式中读取数据250
11.3.2 对修改进行排队251
11.4 本章小结253
第12章 抓取计划、策略和配置文件255
12.1 延迟加载和急加载256
12.1.1 理解实体代理256
12.1.2 延迟持久化集合260
12.1.3 使用拦截进行延迟加载262
12.1.4 关联和集合的急加载264
12.2 选择一个抓取策略266
12.2.1 n+1查询问题266
12.2.2 笛卡尔积问题267
12.2.3 批量预抓取数据270
12.2.4 使用子查询预抓取集合272
12.2.5 使用多个SELECT进行急抓取273
12.2.6 动态急抓取274
12.3 使用抓取配置文件275
12.3.1 声明Hibernate抓取配置文件276
12.3.2 使用实体图277
12.4 本章小结281
第13章 数据过滤283
13.1 级联状态迁移284
13.1.1 可用的级联选项284
13.1.2 传递式分离与合并285
13.1.3 级联刷新287
13.1.4 级联复制289
13.1.5 启用全局传递式持久化290
13.2 侦听和拦截事件290
13.2.1 JPA事件侦听器和回调291
13.2.2 实现Hibernate拦截器294
13.2.3 核心事件系统298
13.3 使用Hibernate Envers进行审计和版本控制299
13.3.1 启用审计日志300
13.3.2 创建审计追踪301
13.3.3 找出版本301
13.3.4 访问历史数据303
13.4 动态数据过滤器305
13.4.1 定义动态过滤器306
13.4.2 应用过滤器306
13.4.3 启用过滤器307
13.4.4 过滤集合访问308
13.5 本章小结309
第Ⅳ部分 编写查询313
第14章 创建和执行查询313
14.1 创建查询314
14.1.1 JPA查询接口314
14.1.2 类型化查询结果316
14.1.3 Hibernate的查询接口316
14.2 准备查询318
14.2.1 防止SQL注入攻击318
14.2.2 绑定命名参数318
14.2.3 使用定位参数320
14.2.4 对大结果集分页320
14.3 执行查询322
14.3.1 列示所有结果322
14.3.2 得到单个结果322
14.3.3 滚动数据库游标323
14.3.4 遍历一个结果325
14.4 命名和外部化查询326
14.4.1 调用一个命名查询326
14.4.2 在XML元数据中定义查询326
14.4.3 使用注解定义查询327
14.4.4 编程式定义命名查询328
14.5 查询提示329
14.5.1 设置一个超时时长330
14.5.2 设置刷新模式330
14.5.3 设置只读模式331
14.5.4 设置一个抓取大小331
14.5.5 设置一个SQL注释331
14.5.6 命名的查询提示332
14.6 本章小结333
第15章 查询语言335
15.1 选择336
15.1.1 指定别名和查询根336
15.1.2 多态查询337
15.2 限制338
15.2.1 比较表达式339
15.2.2 使用集合的表达式344
15.2.3 调用函数345
15.2.4 对查询结果排序347
15.3 投影348
15.3.1 实体和标量值的投影348
15.3.2 使用动态实例化350
15.3.3 得到唯一结果351
15.3.4 在投影中调用函数352
15.3.5 聚合函数354
15.3.6 分组355
15.4 联结357
15.4.1 使用SQL进行联结357
15.4.2 JPA中的联结选项359
15.4.3 隐式关联联结359
15.4.4 显式联结361
15.4.5 使用联结进行动态抓取363
15.4.6 theta风格的联结366
15.4.7 比较标识符367
15.5 子查询369
15.5.1 相关与不相关的嵌套369
15.5.2 量化370
15.6 本章小结371
第16章 高级查询选项373
16.1 转换查询结果373
16.1.1 返回一系列列表374
16.1.2 返回一系列映射375
16.1.3 将别名映射到bean属性376
16.1.4 编写一个ResultTransformer376
16.2 过滤集合377
16.3 Hibernate条件查询API380
16.3.1 选择和排序380
16.3.2 限制381
16.3.3 投影和聚合382
16.3.4 联结383
16.3.5 子查询385
16.3.6 示例查询385
16.4 本章小结387
第17章 自定义SQL389
17.1 回退到JDBC390
17.2 映射SQL查询结果391
17.2.1 使用SQL查询进行投影392
17.2.2 映射到一个实体类393
17.2.3 自定义结果映射395
17.2.4 外部化原生查询406
17.3 自定义CRUD操作410
17.3.1 启用自定义加载器410
17.3.2 自定义创建、更新和删除411
17.3.3 自定义集合操作412
17.3.4 在自定义加载器中急抓取414
17.4 调用存储过程417
17.4.1 返回一个结果集418
17.4.2 返回多个结果以及更新计数419
17.4.3 设置输入和输出参数421
17.4.4 返回一个游标423
17.5 将存储过程用于CRUD425
17.5.1 自定义一个具有过程的加载器425
17.5.2 用于CUD的过程426
17.6 本章小结428
第V部分 构建应用程序431
第18章 设计客户端/服务器应用程序431
18.1 创建持久化层432
18.1.1 一种通用的数据访问对象模式433
18.1.2 实现通用接口434
18.1.3 实现实体DAO436
18.1.4 测试持久化层438
18.2 构建一个无状态服务器439
18.2.1 编辑一个拍卖商品440
18.2.2 放置出价442
18.2.3 分析无状态应用程序446
18.3 构建一个状态服务器447
18.3.1 编辑一个拍卖商品448
18.3.2 分析状态性应用程序452
18.4 本章小结454
第19章 构建Web应用程序455
19.1 集成JPA与CDI455
19.1.1 生成一个EntityManager456
19.1.2 将EntityManager与事务联结起来457
19.1.3 注入一个EntityManager458
19.2 数据的分页和排序459
19.2.1 偏移量分页与搜寻分页对比459
19.2.2 在持久化层中分页461
19.2.3 逐页查询466
19.3 构建JSF应用程序468
19.3.1 请求作用域服务468
19.3.2 会话作用域服务471
19.4 序列化域模型数据478
19.4.1 编写一个JAX-RS服务479
19.4.2 应用JAXB映射480
19.4.3 序列化Hibernate代理482
19.5 本章小结485
第20章 扩展Hibernate487
20.1 大量和批量处理487
20.1.1 JPQL和条件中的大批量语句488
20.1.2 SQL中的大批量语句492
20.1.3 批处理493
20.1.4 Hibernate StatelessSession接口496
20.2 缓存数据498
20.2.1 Hibernate共享的缓存架构498
20.2.2 配置共享缓存502
20.2.3 启用实体和集合缓存503
20.2.4 测试共享缓存506
20.2.5 设置缓存模式508
20.2.6 控制共享缓存509
20.2.7 查询结果缓存510
20.3 本章小结512