JDBC是什么?
1.Java Database Connectivity:Java访问数据库的解决方案
2.JDBC定义了一套标准接口,即访问数据库的通用API,不同的数据库厂商根据各自数据库的特点去实现这些接口
3.JDBC希望用相同的方式访问不同的数据库,让具体的数据库操作与数据库厂商实现无关,从而让在不同数据库之间轻易的切换
本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程在,真正执行的代码是驱动jar包中的实现类。
JDBC相关类与接口
1.驱动管理类:DriverManger
2.连接接口:Connection
3.语句对象接口:Statement
4.结果集接口:ResultSet
JDBC工作原理
1.Class.forName():加载驱动
2.DriverManger获取Connection连接
3.创建Statement获取SQL语句
4.返回ResultSet查询结果
5.释放资源
JDBC的缺点:
1.代码重复度高:
大量的重复代码,以resultSet为例,每次都需要重复解析结果集;
2.硬编码:
SQL语句存在java代码中,不能很好的分离数据库语句和java语句,造成代码不易维护;
3.SQL参数固定:
SQL语句的参数固定,使得SQL语句不灵活,无法满足多变的场景;
4.底层技术:
JDBC属于底层的技术,不支持分布式,缓存等技术,对于复杂场景的应对不好。