前言
JDBC是Java程序与数据库通信的标准API 它定义在JDK的API中 通过JDBC技术 Java程序可以非常方便地与各种数据库交互 JDBC在Java程序与数据库系统之间架起了一座桥梁
JDBC由一组用Java语言编写的类和接口组成 它对数据库的操作提供了基本方法
一、JDBC连接数据库的过程
在了解了JDBC与数据库后 接下来介绍使用JDBC操作数据的开发流程 关键步骤如下
1:注册数据库驱动
连接数据库前 需要将数据库厂商提供的数据库驱动类注册到JDBC的驱动管理器中 通常情况下是通过将数据库驱动类加载到JVM来实现
Class.forName("com.mysql.jdbc.Driver");
2:构建数据库连接URL
要建立数据库连接 就要构建数据库连接的URL 不同数据库有所区别 但大体都是JDBC协议+IP地址+端口+数据库名称 如MySQL的如下
jdbc:mysql//localhost:3306/test;
3:获取Connection对象
在注册了数据库驱动以及构建数据库URL后 就可以通过驱动管理器获取数据库连接Connection 它是JDBC封装的数据库连接对象 只有创建此对象后 才可以对数据进行相关操作
DriverManager.getConnection(url,username,password);
完整的连接代码如下
try{ Class.forName("con.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/test"; String username="root"; String password="1111"; Connection conn=DriverManager.getConnection(url,username,password); if(conn!=null){ out.printIn("连接成功"); conn.close(); } else{ out.printIn("连接失败"); } catch(ClassNotFoundException e){ e.printStackTrace(); } catch(SQLException e){ e.printStackTrace(); }
二、JDBC API
学习JDBC需要掌握JDBC中的类和接口 也就是JDBC API
1.Connection接口
位于java.sql包中 是与特定数据库的连接会话
常用方法如下
close()
关闭释放资源
commit()
提交事务
createstatement()
创建一个对象
2.Statement接口
在创建了数据库连接之后 就可以通过程序来调用SQL语句对数据库进行操作 在Statement接口中封装了这些操作 Statement接口提供了执行语句和获取查询结构的基本方法
addBatch()
用于批处理
boolean execute()
执行sql语句
ResultSet execute()
执行查询类型的SQL语句并返回对象
3:ResultSet接口
执行SQL语句的查询语句会返回查询的结果集 在JDBC API中使用ResultSet对象接受查询结果
三:对数据库进行增删改查
1:添加数据
可以使用insert实现插入数据的SQL语句 参数可以用占位符?代替 然后通过preparedStatement对其赋值并执行SQL
String sql="insert into 表(属性...)values(?,?,?..); PreparedStatement ps=conn.prepareStatement(sql); ps.setString(); ps.setDouble();
2:查询数据
执行查询数据操作后需要通过一个对象来装载查询结果 这个对象就是ResultSet对象 可以通过光标定位
String sql="select * from 表"; ResultSet rs=stmt.executeQuery(sql);
3:修改数据
修改数据用update实现
String sql="update 表 set 属性=值 where 属性=值";
4:删除数据
用delete关键字实现
String sql="delete from 表 where 属性=值";
5:批处理
当执行多条SQL语句时 每一条语句都要建立一个连接是非常麻烦的JDBC的批处理原理是将批量的SQL语句一次性发送到数据库中进行执行 从而解决多次与数据库连接的麻烦