Java_JDBC由浅入深
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
第一节整理目的 (3)
第二节jdbc的概念 (3)
2.1概念 (3)
2.2 Jdbc与应用程序的关系 (3)
2.3 数据库的连接步骤 (4)
2.4 Quick Start (4)
第三节如何与数据库建立连接 (6)
3.1 注册驱动 (6)
3.2 建立数据库的连接 (8)
3.3 规范Quick Start中的例子 (10)
第四节Statement 接口的使用详解 (12)
4.1 Statement 的常用方法 (12)
4.2 CRUD操作 (15)
4.3 Statement有那些缺点 (18)
第五节ResultSet接口的使用详解 (19)
第六节JDBC 中数据类型详解 (29)
6.1 基本数据类型 (29)
6.2 日期类型 (33)
6.3 CLOB类型 (35)
6.4 BLOB类型 (38)
6.5 其他数据类型 (40)
第七节DAO设计模式详解 (40)
7.1 实际项目中如何使用JDBC (40)
7.2 DAO设计模式简介 (40)
7.3 DAO设计模式的实现 (41)
7.4 DAO设计模式与工厂模式的整合 (48)
7.5 DAO设计模式测试 (51)
第八节JDBC对事务的支持 (51)
8.1 模拟转账 (52)
8.2 jdbc默认事务 (53)
8.3 事务提交与回滚 (53)
8.4 设置保存点 (54)
8.5 JTA事务的介绍 (55)
8.6 数据库的隔离级别介绍 (55)
8.6.1 未提交读 (56)
8.6.2 提交读 (57)
8.6.3 重复读 (57)
8.6.4 序列化读 (58)
8.7 小结 (60)
第九节PreparedStatement接口的使用 (60)
第十节CallableStatement接口的使用 (60)
9.1 无参无返回值存储过程调用 (61)
9.2 有参无返回值存储过程调用 (61)
9.3 有参有返回值存储过程调用 (62)
9.4 JDBC其他API (63)
第十一节元数据信息 (64)
11.1 数据库元数据信息 (64)
11.2 参数元数据信息 (65)
第十二节批处理的使用 (65)
12.1 普通方式插入一千条数据 (66)
12.2 批处理方式插入一千条数据 (67)
第十三节JDBC其他API (68)
13.1 可滚动结果集 (68)
13.2 分页技术 (70)
13.3 可更新结果集 (71)
第十四节编写一个简单的数据库连接池 (72)
14.1 为什么要使用数据库连接池 (72)
14.2 数据库连接池雏形 (72)
14.2 数据库连接池优化 (75)
14.2.1 对线程池加锁 (75)
14.2.2 连接不够用时抛出异常 (75)
14.3 数据库连接池之代理模式 (76)
14.3.1 静态代理 (76)
14.3.2 动态代理 (82)
14.4 DBCP数据库连接池的使用 (85)
第十五节jdbc轻量级封装 (86)
15.1 将结果集封装为Map (86)
15.1.1 ResultSetMetaData演示 (86)
15.1.2解决多行记录的问题 (87)
15.1.3 Map结果集的封装 (88)
15.2 将结果集封装为对象 (89)
15.2.1 user表POJO的编写 (89)
15.2.2 Bean结果集的封装 (90)
15.3 将结果集封装为List (92)
15.4 策略模式的应用 (94)
15.4.1 Map结果集策略模式应用 (94)
15.4.2 Bean结果集策略模式应用 (95)
15.4.3 List结果集策略模式应用 (96)
15.4.4 单元测试 (97)
15.5 模板模式的应用 (98)
第十六节近期推出 (99)
第一节整理目的
当今orm等全自动针对对象持久化的框架越来越多并且也越来越成熟(ibatis,hibernate,ejb的jpa),但是无奈新东家需要使用jdbc(原始手工作坊)的模式和数据库打交道,用了几年的ibatis,再次使用jdbc发现有些细节和底层的东西自己并不是十分清楚,所以就啰理啰嗦的整理出一份学习笔记,第一作为自己对jdbc重新的复习,第二如果有可能希望给初学jdbc的朋友带来一定的便利,这样也不枉我点点滴滴的记录。
随着对jdbc整理和学习的逐渐深入,发现原先使用orm框架时忽略了那么多的细节,这样在出现问题或者学习orm更加深入知识时则会显得力不从心,在本文档将jdbc 如何入门阐述清楚之后,增加了如下的内容:
数据库连接池,以及常用连接池的使用(dbcp,c3p0等)
编写一套基于jdbc轻量级的api,方便使用;
如何将查询结果封装为对象;
如何将查询结果封装为Map;
如何将查询结果封装为List;
如何在JDBC的使用中加入策略,模板等模式;
在后面的JDBC高级部分将会讲解到Dbutils源码,Spring对JDBC的强大封装
第二节jdbc的概念
2.1概念
我最不喜欢替别人整理某个名词的概念了,只要是概念性的东西基本上在任何地方都可以查得到,所以我就通俗的写一些自己对jdbc的理解,所谓jdbc就是java与数据库之间进行通讯的api,也就是一个标准,所以如果一个java应用程序想要和数据库打交道基本上都离不开jdbc,众所周知,一些优秀的orm框架的底层也是采用jdbc进行封装的。
2.2 Jdbc与应用程序的关系
JdbcAPI所处的位置和它与应用程序之间的关系,下面的一张图再也明显不过了,其中绿色的部分代表jdbcAPI,它提供了很多接口,并且本身也实现了很多方法,可以看到蓝色的部分就是各个数据库厂商自己对jdbcAPI的一些实现,这就是我们常见的数据库连接驱动,这是使用jdbc程序进行开发必不可少的东西。