JDBC问题分析
持久层框架出现的原因,就是因为JDBC本身的使用存在缺陷和重复,所有的持久层框架都是对JDBC进行了封装,并对一些缺陷进行了规避。
JDBC的使用存在哪些问题呢? 从 加载数据库驱动类 -> 获取连接 -> 预处理sql -> 结果集封装 这整个流程中,存在的问题如下:
- 硬编码严重,包括了加载驱动类和获取连接以及预处理sql,都存在硬编码。
- 频繁的创建和释放数据库连接,数据库的连接和创建是消耗大量资源的。
- 手动封装结果集,繁琐重复的操作。
解决的思路呢?如果让我们自己处理,对于以上的问题,应该如何处理呢?
- 硬编码的解决方案,无非就是配置文件,不过不同的配置文件来做不同的事情,配置和sql处理是两件事情。
- 频繁的数据库连接创建释放,解决思路就是连接池,连接池的使用是很重要的一个内容。
- 手动封装结果集,就是将属性值设置给对应的属性,这个使用Java的反射和内省技术,可以有效解决。
上面就是JDBC存在的问题以及解决问题的一些思路,也是我们如果自己封装持久层框架需要解决的问题。