Java数据库编程宝典PDF电子书下载
- 电子书积分:16 积分如何计算积分?
- 作 者:(美)John ODonahue等著;甄广启,于耀等译
- 出 版 社:北京:电子工业出版社
- 出版年份:2003
- ISBN:7505383914
- 页数:547 页
前言 1
第1部分 介绍数据库、SQL和JDBC 5
第1章 关系型数据库 7
1.1 理解关系型数据库管理系统 7
1.1.1 关系模型 7
1.1.2 Codd法则 8
1.1.3 表、行、列和关键字 9
1.1.4 主键 11
1.1.5 外键 12
1.1.6 关系 14
1.1.7 视图 14
1.1.8 范式化 15
1.2 高级语言 19
1.2.1 结构化查询语言 20
1.2.2 数据定义语言 20
1.2.3 数据处理语言 21
1.2.4 数据查询语言 21
1.3 事务管理和事务控制命令 24
1.3.1 ACID测试 24
1.3.2 SQL中的事务管理 25
1.4 数据库安全和数据控制语言 26
1.4.1 管理数据库用户 26
1.4.2 用户权限 26
1.4.3 用户组和角色 27
1.5.2 两层模型 28
1.5 数据库体系结构 28
1.5.1 Java数据对象 28
1.5.3 三层模型 29
1.6 小结 30
第2章 设计数据库 31
2.1 数据库设计应考虑的事项 31
2.1.1 项目规范 32
2.1.2 设计表 36
2.1.3 生成发票 41
2.2 引用完整性 43
2.2.1 通用完整性规则 43
2.3 小结 44
2.2.2 特定于数据库的完整性规则 44
第3章 SQL基础 45
3.1 SQL语言 45
3.2 SQL数据类型 46
3.3 数据定义语言 47
3.3.1 创建、取消、更改数据库和表 47
3.3.2 创建、更改和取消视图 50
3.4 数据处理语言 51
3.4.1 INSERT语句 52
3.4.2 UPDATE语句 53
3.4.3 DELETE语句 55
3.5 数据查询语言 55
3.5.2 WHERE子句 56
3.5.1 SELECT语句 56
3.5.3 SQL运算符 57
3.5.4 使用子查询 64
3.6 对查询结果排序 68
3.7 将查询结果进行汇总 69
3.7.1 集合函数 70
3.7.2 使用HAVING子句来筛选组 70
3.7.3 使用索引提高SQL查询效率 71
3.7.4 格式化SQL命令 72
3.7.5 使用SQL连接 72
3.7.6 编写SQL的JOIN命令 74
3.7.7 使用UNION运算符进行组合查询 79
3.8.1 管理用户 80
3.8 数据控制语言 80
3.8.2 授予和取消用户权限 81
3.9 创建和使用存储过程 81
3.9.1 在存储过程中使用输入参数 82
3.9.2 存储过程中使用输出参数 83
3.10 小结 83
第4章 JDBC入门 85
4.1 什么是JDBC 85
4.2 两层和三层模型 87
4.2.1 两层模型 87
4.2.2 三层模型 88
4.3 SQL的一致性 88
4.4 JDBC兼容性 89
4.5 JDBC如何工作 90
4.5.1 DriverManager 90
4.5.2 JDBC DataSource 92
4.5.3 DataSource对象和JNDI 93
4.5.4 部署和使用DataSource的基本实现 93
4.6 连接池 94
4.7 分布式事务处理 95
4.7.1 分布式事务管理 96
4.7.2 Connection对象 96
4.8 SQL语句 97
4.8.1 Statement对象 98
4.8.2 PreparedStatement语句 98
4.8.3 CallableStatement 100
4.9 事务 102
4.9.1 事务独立性等级 103
4.9.2 事务存储点 104
4.9.3 多线程 105
4.10 批更新 105
4.11 ResultSet 106
4.12 可滚动的ResultSet 109
4.12.1 创建可滚动的ResultSet 109
4.12.2 游标控制 110
4.12.3 将游标移动到指定行 110
4.12.4 获得游标位置 111
4.13 可更新的ResultSet 111
4.13.1 更新ResultSet 112
4.13.2 插入一新行 114
4.13.3 删除行 115
4.14 观察ResultSet中的变化 115
4.15 RowSet对象 116
4.16 创建Rowset和设置属性 117
4.16.1 Rowset事件 118
4.17 元数据 118
4.17.1 DatabaseMetaData 118
4.17.2 ResultSetMetaData 120
4.17.3 ParameterMetaData方法 121
4.18 SQL数据类型的JDBC映射 121
4.19 SQL3数据类型 122
4.19.2 使用SQL3数据类型 123
4.19.1 对象关系型数据库 123
4.19.3 创建用户定义的数据类型 125
4.20 异常和日志 127
4.20.1 SQLException 127
4.20.2 SQLWarning 127
4.20.3 BatchUpdateException 127
4.20.4 日志 127
4.21 小结 129
第2部分 在两层客户/服务器结构中使用JDBC和SQL 131
第5章 使用JDBC和SQL创建表 133
5.1 创建数据库 133
5.2 使用表 133
5.2.2 SQL数据类型 134
5.2.1 记录和字段、行和列 134
5.2.3 完整性约束 135
5.3 创建表 136
5.4 使用JDBC创建表 136
5.4.1 DriverManager 137
5.4.2 驱动程序 137
5.4.3 连接 137
5.4.4 Statement 137
5.5 使用ALTER TABLE改变表 139
5.6 删除或取消表 141
5.7 创建基于Swing的表构建器 141
5.7.1 控制程序 141
5.7.2 视图 144
5.7.3 模型 149
5.8 小结 150
第6章 插入、更新和删除数据 151
6.1 使用SQL INSERT插入数据 151
6.1.1 INSERT语句 152
6.1.2 使用带有JDBC的INSERT 153
6.1.3 使用INSERT...SELECT 154
6.2 UPDATE语句 155
6.2.1 在UPDATE中使用经计算的值 156
6.2.2 UPDATE的常见问题 156
6.3 带有提交和回滚的事务管理 157
6.5 基于Swing的表编辑器 160
6.4 DELETE语句 160
6.5.1 TableEditFrame 162
6.5.2 Controller类 164
6.6 JDBC ResultSetMetaData 167
6.7 小结 170
第7章 使用SQL查询检索数据 171
7.1 SELECT语句 171
7.1.1 使用WHERE子句 171
7.1.2 格式化SQL命令 172
7.2 在较复杂的WHRER子句中使用运算符 173
7.2.1 DISTINCT运算符 173
7.2.2 TOP运算符 173
7.2.3 比较运算符 174
7.2.4 CHAR和VARCHAR运算符 175
7.2.5 逻辑运算符 176
7.2.6 算术运算符 177
7.2.7 混合运算符:IN和BETWEEN 179
7.2.8 集合运算符 180
7.3 转义序列 180
7.4 子查询 181
7.4.1 使用ANY,SOME和ALL谓词 182
7.4.2 使用IN和NOT IN谓词 183
7.4.3 使用EXISTS和NOT EXISTS谓词 183
7.4.4 嵌套子查询 184
7.4.5 测试子查询 184
7.5.2 使用带有INSERT命令的子查询 186
7.5 子查询的额外用途 186
7.5.1 在SELECT列表中使用子查询 186
7.5.3 使用带有UPDATE命令的子查询 187
7.5.4 使用带有DELETE命令的子查询 187
7.5.5 关联子查询 187
7.6 JDBC ResultSet 188
7.6.1 ResultSetMetaData 189
7.6.2 使用具有JDBC的SELECT来返回RecordSet 189
7.7 基于Swing的SQL查询面板 192
7.7.1 View菜单 192
7.7.2 TableQueryFrame 193
7.8 JDBC代码 198
7.9 小结 201
8.1 使用ORDER BY对查询结果进行排序 203
第8章 组织查询结果和使用索引 203
8.2 GROUP BY子句 204
8.3 聚合函数 205
8.4 使用HAVING子句筛选组 207
8.5 使用索引来提高SQL查询的性能 207
8.6 视图 209
8.7 小结 211
第9章 连接和组合查询 213
9.1 连接表 213
9.1.1 连接的类型 213
9.2 键 214
9.3 使用内连接 215
9.3.1 使用等连接 215
9.2.1 主键 215
9.2.2 外键 215
9.3.2 使用非等连接 219
9.4 使用外连接 219
9.4.1 左外连接 220
9.4.2 右外连接 220
9.4.3 全外连接 221
9.4.4 使用NOT EXISTS 222
9.5 使用自连接 223
9.6 使用UNION运算符合并查询 224
9.6.2 INTERSECT运算符 226
9.7 小结 226
9.6.1 EXCEPT运算符 226
第10章 构建一个客户/服务器应用程序 227
10.1 使用不同的数据库和驱动程序 227
10.1.1 扩展的DBManager类 229
10.2 使用DatabaseMetaData 234
10.3 检索与数据库相关的信息 235
10.3.1 在JTree中显示DatabaseMetaData 238
10.4 检索有关RDBMS功能性的信息 241
10.5 使用ResultSetMetaData 243
10.6 小结 244
第3部分 三层Web站点与JDBC 245
第11章 构建会员Web站点 247
11.1 设计一个多层系统 247
11.2 功能性需求 248
11.3.1 处理会员登录 250
11.3 设计数据库 250
11.3.2 会员注册 251
11.3.3 数据输入 251
11.3.4 搜索数据库 254
11.3.5 数据库驱动的电子邮件 256
11.4 小结 256
第12章 通过servlet和JSP使用JDBC DataSource 257
12.1 使用JDBC DataSource 257
12.2 使用servlet创建动态Web页面 258
12.2.1 创建一个简单的servlet 258
12.3 创建和配置Login servlet 259
12.3.2 创建Login页面 260
12.3.1 实现会员Web站点 260
12.3.3 创建servlet 262
12.3.4 部署 264
12.4 使用JSP 264
12.4.1 在JSP中使用JavaBean 266
12.4.2 自动类型转换 271
12.4.3 创建和部署JDBC LoginBean 271
12.5 小结 274
第13章 使用PreparedStatement和CallableStatement 275
13.1 创建和使用PreparedStatement 275
13.1.1 创建PreparedStatement对象 276
13.1.2 在循环中使用PreparedStatement 276
13.2.1 创建存储过程 278
13.1.3 PreparedStatement返回的值 278
13.2 创建和使用CallableStatement 278
13.2.2 调用存储过程 280
13.2.3 使用JSP Bean中的存储过程 281
13.2.4 ProcessNABean的作用 286
13.2.5 错误处理 290
13.2.6 使用存储过程作为输入和输出参数 292
13.3 小结 294
第14章 使用Blob和Clob管理图像和文档 295
14.1 大对象 295
14.1.1 使用Blob存储二进制数据 296
14.1.2 使用Clob存储文本数据 298
14.2 从浏览器上载图像或文档 299
14.2.1 用于从DBMS下载大对象的servlet 305
14.3 小结 308
第15章 使用JSP,XSL和可滚动的ResultSet显示数据 309
15.1 可滚动的ResultSet 309
15.1.1 创建一个可滚动ResultSet 309
15.1.2 在可滚动ResultSet中移动游标 310
15.1.3 使用可滚动ResultSet创建一个搜索页面 311
15.2 使用XSL从SQL查询中创建网页 319
15.2.1 XSLT如何工作 319
15.2.2 从数据库中检索的数据作为XML文档 320
15.2.3 使用XSL样式表转换XML 323
15.2.4 在JSP页面中使用XSL转换 326
15.3 使用具有XSL样式表的可更新ResultSet 329
15.4 小结 334
第16章 使用JDBC驱动的JavaMail API 335
16.1 使用电子邮件协议 335
16.1.1 MIME协议 335
16.1.2 SMTP协议 336
16.1.3 POP协议 336
16.2 使用JavaMail API 336
16.3 使用JDBC驱动的JavaMail发送电子邮件信息 337
16.3.1 使用JSP页面和JavaMail发送电子邮件 338
16.3.2 使用有SendMailBean的JSP页面 340
16.3.3 部署 341
16.4 使用JavaMail API接收电子邮件 341
16.5 小结 346
第4部分 数据库、JDBC和XML 347
第17章 XML文档对象模型和JDBC 349
17.1 XML与HTML 349
17.2 XML和文档对象模型 350
17.2.1 XML标题 351
17.2.2 标记和属性 351
17.2.3 元素和节点 352
17.3 使用Java XML API——Xerces和JDOM 352
17.4 将Xbean作为可插入的XML处理模块 353
17.5 查询数据库创建XML文档 358
17.6 XML数据源填充数据库 362
17.7 小结 368
18.1 理解RowSet 369
第18章 用RowSet显示数据 369
18.1.1 创建和应用RowSet 370
18.1.2 使RowSet可滚动和可更新 371
18.1.3 更新RowSet 373
18.1.4 插入新行 374
18.1.5 删除行 376
18.1.6 查看可更新RowSet所做的修改 376
18.1.7 RowSet事件 376
18.2 未连接的RowSet 378
18.2.1 在PDA中使用CachedRowSet 379
18.2.2 客户端代码 382
18.3 根据RowSet生成XML 382
18.4 小结 388
第19章 用SQL访问XML文档 389
19.1 用SQL访问XML文档的原因 390
19.2 创建可访问JDBC的XML DBMS 391
19.2.1 实现基类 391
19.2.2 实现JDBC类 392
19.2.3 XMLResultSet 398
19.2.4 实现SQL引擎 404
19.2.5 测试JDBC/XML数据库 412
19.3 小结 418
第5部分 EJB、数据库和持久性 419
第20章 EJB 421
20.1 EJB简述 421
20.2.1 无状态会话Bean 422
20.2 会话bean 422
20.2.2 无状态会话Bean 429
20.3 实体Bean 434
20.3.1 主键 434
20.3.2 持久性存储 434
20.4 消息驱动bean 435
20.5 EJB事务 437
20.5.1 容器管理的事务 438
20.5.2 bean管理的事务 439
20.6 小结 440
第21章 bean管理的持久性 441
21.1 实体对象持久性 441
21.2 bean管理的持久性 442
21.2.1 主键 443
21.2.2 通过实体bean创建和删除实体对象 444
21.2.3 查找实体对象 446
21.2.4 bean实例变量的同步和持久性对象的状态 447
21.2.5 业务方法 449
21.3 BMP实体bean示例——MemberEJB 450
21.4 使用值对象获得更佳性能 457
21.5 小结 460
第22章 容器管理的持久性 461
22.1 CMP实体bean——EJB 2.0之后的新生品 461
22.2 CMP EJB开发 462
22.2.1 主接口和远程接口 462
22.2.2 用最少的代码实现类 464
22.3 EJB查询语言 470
22.4 运行示例应用程序 472
22.5 容器管理的关系 477
22.5.1 关系字段 477
22.5.2 关系的基数和方向 478
22.5.3 访问关系字段 478
22.6 小结 480
第23章 Java数据对象和透明持久性 481
23.1 JDO的透明持久性 481
23.2 什么使JDO成为独特的持久性机制 482
23.3 主要的JDO API 484
23.3.1 PersistenceCapable接口 485
23.3.2 PersistenceManagerFactory接口 485
23.3.3 PersistenceManager接口 486
23.3.4 Query接口 487
23.3.5 Transaction接口 488
23.4 测试客户示例 489
23.5 对复杂域对象模型的支持 492
23.6 JDO应用程序开发过程 494
23.7 JDO与J2EE框架集成 495
23.8 小结 497
第6部分 数据库管理 499
第24章 用户管理和数据库的安全性 501
24.1 组、用户和角色 501
24.1.1 对组进行操作 501
24.1.2 对用户进行操作 504
24.2 理解数据库模式 507
24.3 管理模式 508
24.4 用户权限 509
24.5 用户角色 510
24.5.1 所有权限 510
24.5.2 GRANT命令 511
24.5.3 REVOKE命令 512
24.6 小结 512
第25章 性能调整 513
25.1 数据库调整 513
25.1.1 语句调整 513
25.1.2 调整连接 515
25.1.3 调整索引 517
25.2.3 多数据表 519
25.3 产生冗余数据 519
25.2 修改数据库方案 519
25.2.2 反向范式化 519
25.2.1 范式化 519
25.4 使用导出列和导出表 521
25.5 数据划分 521
25.5.1 水平划分 521
25.5.2 垂直划分 522
25.6 使用视图 522
25.7 持续监控 522
25.8 小结 522
附录A SQL语法简明指南 523
附录B 安装Apache和Tomcat 539
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《教育学考研应试宝典》徐影主编 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《大数据Hadoop 3.X分布式处理实战》吴章勇,杨强 2020
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《数据失控》(美)约翰·切尼-利波尔德(John Cheney-Lippold)著 2019
- 《中国生态系统定位观测与研究数据集 森林生态系统卷 云南西双版纳》邓晓保·唐建维 2010
- 《穿越数据的迷宫 数据管理执行指南》Laura Sebastian-Coleman 2020
- 《大数据环境下的信息管理方法技术与服务创新丛书 俄罗斯档案事业改革与发展研究》徐胡乡责编;肖秋会 2019
- 《断陷湖盆比较沉积学与油气储层》赵永胜等著 1996
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017