JDBC

1、JDBC概述
JDBC(Java Data Base Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。是Java访问数据库的标准规范。
2、JDBC原理
Java提供访问数据库的规范称为JDBC,而生产厂商提供规范的实现类称为驱动。JDBC是接口,驱动是接口的实现。
3、JDBC的开发步骤

  1. 注册驱动
  2. 获得连接
  3. 获得语句执行平台
  4. 执行SQL语句
  5. 处理结果
  6. 释放资源


1、注册驱动
JDBC规范定义驱动接口:java.sql.Driver,MySQL驱动包提供了实现类:com.mysql.jdbc.Driver
DriverManager工具类,提供了注册驱动的方法registerDriver(),方法参数是java.sql.Driver,所以我们可以通过如下语句进行注册:
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
上述注册驱动方式的缺陷在于:
1、硬编码,后期不易于程序扩展和维护
2、驱动被注册两次
开发过程中通常使用Class.forName()加载一个使用字符串描述的驱动类。

2、获得连接
获取连接需要方法DriverManager.getConnection(url,username,password)三个参数分别表示。

  • url:需要连接数据库的位置
  • username:用户名
  • password:密码

MySQL的url:jdbc:mysql://localhost:3306/mydb
url由三部分组成

  • 第一部分jdbc是固定的
  • 第二部分数据库管理系统名称mysql
  • 第三部分由数据库服务器的ip地址、端口号、数据库名


3、获得语句执行平台
获得Statement语句执行平台:Statement stmt = con.createStatement();
常用方法:

  • int executeUpdate(String sql):执行insert、update、delete语句
  • ResultSet executeQuery(String sql):执行select语句
  • boolean execute(String sql):执行select语句返回true,执行其他语句返回false


4、处理结果集(执行insert、update、delete无需处理)
ResultSet实际上是一张二维表,我们可以通过调用其boolean next()方法指向某行记录,当第一次调用next()方法时,便指向第一行记录的位置,这时可以使用ResultSet提供的getXxx()
方法来获取指定列的数据。
常用方法:

  • Object getObject(int index)/Object getObject(String name)获得任意对象
  • String getString(int index)/Object getObject(String name)或得字符串
  • int getInt(int index)/Object getObject(String name)获得整型
  • double getDouble(int index)/Object getObject(String name)获得双精度浮点型


5、释放资源
举例:


4、预处理对象
使用PreparedStatement预处理对象时,建议每条sql语句所有的实际参数,都使用逗号分开。
设置实际参数:
void setXxx(int index,Xxx xx):将指定参数设置为给定的Java的xx值。再将此值发送到数据库时,驱动程序将它转换成一个SQL Xxx类型值。

使用预处理对象向数据库插入数据记录:

使用预处理对象更新数据库记录:

 

使用预处理对象删除数据库记录:

使用预处理对象查询结果:

原文地址:https://www.cnblogs.com/alphajuns/p/9903792.html