JDBC的概念
JDBC(Java Database Connectivity) java应用程序和数据库的连接技术JDBC是sun公司推出的一套用于访问不同数据库的规范或标准(一组接口或抽象类)、java.sql.*
JDBC的好处
1、开发人员不用记多套APi,减轻了开发压力
2、维护性提高
JDBC使用步骤
1、加载驱动(加载MySQL驱动)
将MySQL提供的一套连接的实现类加载到应用程序中
2、获取连接
3、访问数据库的数据,实现增删改查
4、关闭连接
加载驱动的两种方式
方式一 静态加载
静态加载的不足:
(1)依赖性太强,如果没有mysql驱动jar包 代码报错
(2)(查看源码)导致 Driver类new了两遍,效率较低
package com.mysql.jdbc;
import com.mysql.jdbc.NonRegisteringDriver;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Driver extends NonRegisteringDriver implements java.sql.Driver {
public Driver() throws SQLException {
}
static
{
try {
DriverManager.registerDriver(new Driver());
}
catch (SQLException arg0) {
throw new RuntimeException("Can\'t register driver!");
}
}
}
方式二 动态加载
Class.forName("com.mysql.jdbc.Driver");
JDBC的相关API
1、DriverManager 驱动管理类registerDriver 加载驱动(不建议用)
getConnection 获取连接(提供了三种方式)
2、Connection 连接接口createStatement() 获取命令对象
prepareStatement(sql) 获取预编译命令对象
3、Statement 命令 接口execute(sql):执行任何sql语句,返回是否为结果集
executeQuery(sql):执行查询sql语句,返回ResultSet结果集对象
executeUpdate(sql):执行增删改sql语句,返回受影响的行数
4、PreparedStatement 预编译命令 接口execute():执行任何sql语句,返回是否为结果集
executeQuery():执行查询sql语句,返回ResultSet结果集对象
executeUpdate():执行增删改sql语句,返回受影响的行数
setXX(占位符索引,占位符的值):设置该占位符的值,索引从1开始,值的类型为XX
setObject(占位符索引,占位符的值):设置该占位符的值,索引从1开始,值的类型为Object
5、ResultSet 结果集接口next():下移一行,并返回该行是否有值
previous():上移一行,并返回该行是否有值getXX(列索引):根据列索引获取该列值,返回类型为XX。索引从1开始
getObject(列索引):根据列索引获取该列值,返回类型为Object。索引从1开始
getXX(列名):根据列名获取该列值,返回类型xx
getObject(列名):根据列名获取该列值,返回类型Object