JDBC和连接池011.JDBC概述
- 基本介绍
- JDBC为访问不同的数据库提供了同一的接口 , 为使用者屏蔽了细节问题
- Java程序员使用JDBC , 可以连接任何提供了jdbc驱动程序的数据库系统 , 从而完成对数据库的各种操作
- jdbc原理图
JDBC是java提供的一套用于数据库操作的接口API , Java程序员只需要面向这套接口编程即可 。不同的数据库厂商需要针对这套接口 , 提供不同的实现 。
文章插图
jdbc模拟实现模拟JDBC驱动:
package jdbc.myjdbc;/** * 我们规定的jdbc接口(方法)规范 */public interface JdbcInterface {//连接public Object getConnection();//crudpublic void crud();//关闭连接public void close();}
模拟Mysql驱动:package jdbc.myjdbc;/** * 模拟 mysql数据库实现jdbc接口[由mysql厂商开发] */public class MysqlJdbcImpl implements JdbcInterface{@Overridepublic Object getConnection() {System.out.println("得到 mysql 的连接");return null;}@Overridepublic void crud() {System.out.println("完成 mysql 的增删改查");}@Overridepublic void close() {System.out.println("关闭 mysql 的连接");}}
模拟Oracle驱动:package jdbc.myjdbc;/** * 模拟实现oracle的连接驱动-即实现规范接口 */public class OracleJdbcImpl implements JdbcInterface{@Overridepublic Object getConnection() {System.out.println("得到 oracle 的连接");return null;}@Overridepublic void crud() {System.out.println("完成 oracle 的增删改查");}@Overridepublic void close() {System.out.println("关闭 oracle 的连接");}}
模拟java程序使用各种数据库驱动连接数据库:package jdbc.myjdbc;public class TestJdbc {public static void main(String[] args) {//完成mysql的操作JdbcInterface jdbcInterface = new MysqlJdbcImpl();jdbcInterface.getConnection();// 通过接口来调用实现类[动态绑定]jdbcInterface.crud();jdbcInterface.close();System.out.println("==============");//完成oracle的操作jdbcInterface = new OracleJdbcImpl();jdbcInterface.getConnection();// 通过接口来调用实现类[动态绑定]jdbcInterface.crud();jdbcInterface.close();}}
文章插图
- JDBC API
文章插图
文章插图
文章插图
2.JDBC快速入门2.1JDBC程序编写步骤
- 注册驱动 -- 加载Driver类
- 获取连接 -- 得到Connection
- 执行增删改查 -- 发送SQL命令给mysql执行
- 释放资源 -- 关闭相关连接
文章插图
例子--通过jdbc对表actor进行添加 , 删除和修改操作
- 首先在SQL yog使用mysql数据库创建一个演员actor表
-- 创建测试表 演员表CREATE TABLE actor( id INT PRIMARY KEY AUTO_INCREMENT, `name` VARCHAR(32) NOT NULL DEFAULT '', sex CHAR(1) NOT NULL DEFAULT '女', borndate DATETIME, phone VARCHAR(12));SELECT * FROM actor;
- 下载mysql连接驱动
文章插图
- 在项目中创建libs文件夹 , 将驱动复制进文件夹中 , 右键点击驱动 , 选择ad as library
经验总结扩展阅读
- 三伏贴是去医院还是推拿店好 推拿店的三伏贴和医院的有什么区别
- 精梳棉和100%棉的区别
- 古代风的雅称
- 商行和便利店的区别
- 杨梅和海鲜同食会中毒吗 食用杨梅的注意事项
- 买二手空调要注意什么
- 椒盐是胡椒粉和盐么
- 烧鸡和烤鸡的区别
- 沟通四大洋的海峡名称
- 联发科天玑1000plus和骁龙855哪个玩游戏好