IBM最佳实践 Java企业级持久化技术指南PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:(美)巴西亚(Barcia.R.)等编著
- 出 版 社:北京:科学出版社
- 出版年份:2010
- ISBN:9787030278852
- 页数:386 页
第1部分 持久性的一个问题 2
第1章 对象关系映射简史 2
1.1 对象关系阻抗失配 3
1.2 Java史前课程 3
1.2.1 Delphi 4
1.2.2 Rogue Wave DBTools.h++ 4
1.2.3 NeXT DbKit 4
1.2.4 TopLink for Smalltalk 5
1.2.5 IBM ObjectExtender 5
1.3 第一代Java解决方案 6
1.3.1 JDBC 1.0和2.0 6
1.3.2 Java的TopLink 7
1.3.3 EJB 1.0 7
1.3.4 VisualAge Persistence Builder 7
1.3.5 EJB 2.0 8
1.4 开源及下一代 9
1.4.1 Hibernate 10
1.4.2 iBATIS 10
1.5 吸收对象数据库的反主流文化 11
1.5.1 ODMG 11
1.5.2 JDO 12
1.5.3 JPA 12
1.6 面向服务架构及之后 13
1.6.1 信息作为服务 13
1.6.2 pureQuery和ProjectZero 14
1.7 小结 15
1.8 参考文献 16
第2章 高层需求和持久性 17
2.1 一些“必要的”背景 17
2.1.1 了解利益相关者 17
2.1.2 不同的人有不同的需求 18
2.2 管理人员和业务需求 19
2.2.1 硬件和软件的依赖 22
2.2.2 标准的支持 23
2.2.3 开源和社区驱动的活动 24
2.2.4 供应商、许可协议和支持 25
2.2.5 知识产权的考虑 25
2.2.6 可用的技术人员 27
2.2.7 有效的培训和指导 27
2.2.8 开发和管理工具 28
2.2.9 构建还是购买 29
2.3 IT负责人和企业级品质的解决方案 30
2.3.1 功能性和业务流程 31
2.3.2 可靠性和事务请求 33
2.3.3 可用性和用户会话 34
2.3.4 有效性和运行时资源 35
2.3.5 可维护性和应用组件 38
2.3.6 可移植性和标准平台 39
2.3.7 互操作性和企业级品质的解决方案 41
2.4 小结 42
2.5 参考资料 43
第3章 设计持久对象服务 44
3.1 一些基本概念 44
3.1.1 模式语言 44
3.1.2 领域模型模式 45
3.2 领域建模最佳实践 46
3.2.1 选择某种建模符号来沟通必要细节 46
3.2.2 项目利益相关者参与创建和修改领域模型 47
3.2.3 领域模型不是设计模型 48
3.2.4 领域模型并不总是必需的 48
3.2.5 基于变化的规划 49
3.3 公共的ORM范例的价值 49
3.3.1 领域模型 50
3.3.2 数据库模式 53
3.3.3 数据库约束 54
3.3.4 数据库规范化方法 55
3.3.5 服务接口 57
3.3.6 单元测试用例 59
3.4 再谈对象关系映射阻抗失配 63
3.4.1 关联 64
3.4.2 组合 67
3.4.3 包容 68
3.4.4 封装 69
3.4.5 继承 70
3.4.6 多态性 72
3.4.7 对象标识 73
3.4.8 对象导航 74
3.5 对象关系映射方法 76
3.5.1 自顶而下 76
3.5.2 自底而上 77
3.5.3 中间对接 78
3.6 可考虑的其他模式 79
3.6.1 元数据映射、延迟加载和工作单元 79
3.6.2 分布式外观和数据传输对象 79
3.7 小结 80
3.8 参考资料 81
第4章 如何评估可选项 83
4.1 同型比较 83
4.1.1 能够体现好、更好和最好的语境 84
4.1.2 建立独立的标准 84
4.1.3 制订清单并检查两次 86
4.1.4 保持清单真实 87
4.2 企业级持久性 89
4.2.1 一种规格并非处处适用 90
4.2.2 不问是否,而问什么与为何 90
4.2.3 细节就是问题所在 91
4.3 一个可用的评估模板 92
4.3.1 背景 93
4.3.2 架构概况 93
4.3.3 编程模型 94
4.3.4 ORM功能支持 96
4.3.5 调优选项 98
4.3.6 公共范例的开发过程 99
4.4 充分利用你的经验 100
4.4.1 尽早并经常使用调查问卷 100
4.4.2 记住历史以免重蹈覆辙 101
4.5 小结 101
4.6 参考资料 102
第2部分 同型比较 104
第5章 JDBC 104
5.1 背景 104
5.1.1 框架类型 104
5.1.2 历史 105
5.2 层次架构概况 105
5.2.1 标准遵守 106
5.2.2 平台要求 107
5.2.3 其他依赖 107
5.2.4 供应商和许可协议 108
5.2.5 现有文献 108
5.3 编程模型 109
5.3.1 初始化 110
5.3.2 连接 111
5.3.3 事务 113
5.3.4 创建 115
5.3.5 检索 116
5.3.6 更新 118
5.3.7 删除 119
5.3.8 存储过程 119
5.3.9 批处理 119
5.3.10 框架扩展 120
5.3.11 错误处理 120
5.4 ORM功能支持 121
5.4.1 对象 122
5.4.2 继承 123
5.4.3 键 124
5.4.4 属性 124
5.4.5 被包含对象 125
5.4.6 关联关系 126
5.4.7 约束 126
5.4.8 派生属性 127
5.5 调优选项 127
5.5.1 查询优化 127
5.5.2 缓存 128
5.5.3 加载相关联对象 128
5.5.4 锁 129
5.6 公共范例的开发过程 129
5.6.1 定义对象 129
5.6.2 实现服务 132
5.6.3 组件打包 137
5.6.4 单元测试 137
5.6.5 生产部署 138
5.7 小结 138
5.8 参考资料 139
第6章 Apache iBATIS 140
6.1 背景 140
6.1.1 框架类型 140
6.1.2 历史 140
6.2 架构概况 141
6.2.1 标准遵守 142
6.2.2 平台要求 142
6.2.3 其他依赖 142
6.2.4 供应商和许可协议 143
6.2.5 现有文献 143
6.3 编程模型 144
6.3.1 初始化 144
6.3.2 连接 146
6.3.3 事务 146
6.3.4 创建 148
6.3.5 检索 150
6.3.6 更新 151
6.3.7 删除 152
6.3.8 存储过程 153
6.3.9 批处理 154
6.3.10 框架扩展 155
6.3.11 错误处理 157
6.4 ORM功能支持 158
6.4.1 对象 158
6.4.2 继承 158
6.4.3 键 162
6.4.4 属性 163
6.4.5 被包含对象 166
6.4.6 关系 166
6.4.7 约束 169
6.4.8 派生属性 170
6.5 调优选项 172
6.5.1 查询优化 172
6.5.2 缓存 172
6.5.3 加载相关联对象 173
6.5.4 锁 174
6.6 公共范例的开发过程 174
6.6.1 定义对象 174
6.6.2 实现服务 181
6.6.3 组件打包 188
6.6.4 单元测试 189
6.6.5 生产部署 189
6.7 小结 189
6.8 参考资料 191
第7章 Hibernate Core 192
7.1 背景 192
7.1.1 框架类型 193
7.1.2 历史 193
7.2 架构概况 193
7.2.1 标准遵守 193
7.2.2 平台要求 194
7.2.3 其他依赖 194
7.2.4 供应商和许可协议 194
7.2.5 现有文献 194
7.3 编程模型 195
7.3.1 初始化 196
7.3.2 连接 198
7.3.3 事务 198
7.3.4 创建 200
7.3.5 检索 201
7.3.6 更新 204
7.3.7 删除 205
7.3.8 存储过程 207
7.3.9 批处理 208
7.3.10 框架扩展 208
7.3.11 错误处理 208
7.4 ORM功能支持 209
7.4.1 对象 209
7.4.2 继承 211
7.4.3 键 212
7.4.4 属性 216
7.4.5 被包含对象 217
7.4.6 关联关系 219
7.4.7 约束 220
7.4.8 派生属性 220
7.5 调优选项 221
7.5.1 查询优化 221
7.5.2 缓存 221
7.5.3 加载相关联对象 222
7.5.4 锁 224
7.6 公共范例的开发过程 226
7.6.1 定义对象 226
7.6.2 实现服务 232
7.6.3 组件打包 238
7.6.4 单元测试 239
7.6.5 生产部署 239
7.7 小结 239
7.8 参考资料 240
第8章 Apache OpenJPA 241
8.1 背景 241
8.1.1 框架类型 242
8.1.2 历史 242
8.2 架构概况 242
8.2.1 标准遵守 242
8.2.2 平台要求 243
8.2.3 其他依赖 243
8.2.4 供应商和许可协议 243
8.2.5 现有文献 244
8.3 编程模型 245
8.3.1 初始化 246
8.3.2 连接 247
8.3.3 事务 250
8.3.4 创建 253
8.3.5 检索 253
8.3.6 更新 255
8.3.7 删除 257
8.3.8 存储过程 258
8.3.9 批处理 258
8.3.10 框架扩展 259
8.3.11 错误处理 259
8.4 ORM功能支持 260
8.4.1 对象 261
8.4.2 继承 262
8.4.3 键 267
8.4.4 属性 272
8.4.5 被包含对象 276
8.4.6 关联关系 279
8.4.7 约束 283
8.4.8 派生属性 283
8.5 调优选项 285
8.5.1 查询优化 285
8.5.2 缓存 285
8.5.3 加载相关联对象 287
8.5.4 锁 287
8.6 公共范例的开发过程 288
8.6.1 定义对象 288
8.6.2 实现服务 292
8.6.3 组件打包 296
8.6.4 单元测试 298
8.6.5 生产部署 298
8.7 小结 298
8.8 参考文献 300
第9章 pureQuery和Project Zero 301
9.1 背景 301
9.1.1 框架类型 302
9.1.2 历史 302
9.2 层次架构概况 303
9.2.1 标准遵守 305
9.2.2 平台要求 306
9.2.3 其他依赖 306
9.2.4 供应商和许可协议 306
9.2.5 现有文献 307
9.3 编程模型 308
9.3.1 初始化 309
9.3.2 连接 310
9.3.3 事务 311
9.3.4 创建 313
9.3.5 检索 316
9.3.6 更新 318
9.3.7 删除 319
9.3.8 存储过程 320
9.3.9 批处理 321
9.3.10 框架扩展 321
9.3.11 错误处理 323
9.4 ORM功能支持 323
9.4.1 对象 324
9.4.2 继承 324
9.4.3 键 326
9.4.4 属性 327
9.4.5 被包含对象 327
9.4.6 关联关系 327
9.4.7 约束 328
9.4.8 派生属性 328
9.5 调优选项 329
9.5.1 查询优化 329
9.5.2 缓存 330
9.5.3 加载相关联对象 330
9.5.4 锁 331
9.6 公共范例的开发过程 331
9.6.1 定义对象 333
9.6.2 实现服务 336
9.6.3 组件打包 341
9.6.4 单元测试 343
9.6.5 生产部署 344
9.7 小结 344
9.8 参考资料 346
第10章 将理论付诸实践 348
10.1 评估一览 348
10.1.1 背景 348
10.1.2 架构概况 349
10.1.3 编程模型 349
10.1.4 ORM功能支持 351
10.1.5 调优选项 351
10.1.6 公共范例的开发过程 352
10.2 现在要做什么 353
10.2.1 不要另起炉灶来避免权衡 353
10.2.2 利用和扩展开源项目 354
10.2.3 使用敏捷过程并持续重构 355
10.2.4 做好重访决定的准备 358
10.3 小结 358
10.4 参考资料 359
附录A 安装公共范例 360
A.1 支撑技术的简要背景 360
A.1.1 Apache Derby 360
A.1.2 Eclipse 361
A.1.3 JUnit和DbUnit 361
A.2 安装前提条件 362
A.2.1 下载源代码 362
A.2.2 JDK 5.0 363
A.2.3 Eclipse 3.2+ 363
A.2.4 Apache Derby Eclipse Plug-in 363
A.2.5 Project Zero M1 Eclipse Plug-In 363
A.3 导入和运行特定持久性技术的代码 363
A.3.1 导入Java SE应用程序 363
A.3.2 解决项目的DbUnit问题 365
A.3.3 添加Apache Derby特性 366
A.3.4 启动Apache Network Server 367
A.3.5 运行数据库脚本 368
A.3.6 运行JDBC的单元测试 368
A.3.7 解决iBATIS的依赖问题 369
A.3.8 运行iBATIS JUnit 371
A.3.9 解决Hibernate的依赖问题 372
A.3.10 运行Hibernate应用程序 373
A.3.11 解决OpenJPA的依赖问题 374
A.3.12 运行OpenJPA的字节码增强 376
A.3.13 运行OpenJPA应用程序 377
A.3.14 运行Project Zero应用程序 378
A.3.15 使用IBM EJB 3功能包来运行EJB3应用程序 380
A.3.16 疑难解答 386
A.4 参考资料 386
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《近代旅游指南汇刊二编 16》王强主编 2017
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《甘肃省档案馆指南》甘肃省档案馆编 2018
- 《Prometheus技术秘笈》百里燊 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《林下养蜂技术》罗文华,黄勇,刘佳霖主编 2017
- 《脱硝运行技术1000问》朱国宇编 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《《走近科学》精选丛书 中国UFO悬案调查》郭之文 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《中医骨伤科学》赵文海,张俐,温建民著 2017
- 《美国小学分级阅读 二级D 地球科学&物质科学》本书编委会 2016
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《强磁场下的基础科学问题》中国科学院编 2020
- 《小牛顿科学故事馆 进化论的故事》小牛顿科学教育公司编辑团队 2018
- 《小牛顿科学故事馆 医学的故事》小牛顿科学教育公司编辑团队 2018
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019