JDBC访问数据库的流程
- 注册驱动程序
- 创建和数据库的连接
- 创建状态对象
- 执行SQL语句
- 处理结果
- 关闭资源
JDBC常用的API
JDBC定义了很多接口和类,主要把包括DriverManager、Connection、Statement、PreparedStatement和ResultSet等。
驱动程序管理器DriverManager
DriverManager是JDBC管理层,作用于用户和驱动程序之间。它跟踪可用的驱动程序,并在数据库和响应的驱动程序之间建立连接。该类负责加载、注册JDBC驱动程序,管理应用程序和已注册的驱动 程序的连接。常用方法如下
static Connection getConnection(String url, String name, String password):简历指定数据库的url连接。
static Driver getDriver(String url):返回能够打开url所指定的数据库的驱动程序。
对于简单的应用程序,一般只需直接使用该类的getConnection方法与数据库进行连接,通过调用方法Class.forName(),将显式的加载驱动程序类。一般获得连接的方法如下:
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://localhost:3306/book";
String name = "root";
String password = "123456";
Connection conn = (Connection) DriverManager.getConnection(url,name,password);
Connection接口
Connection接口代表与数据库的连接,并拥有创建SQL语句的方法,用来完成基本的SQL操作,接口的常用方法如下:
void close():断开与数据库的连接
Statement createStatement():创建一个Statement对象,用于将SQL语句发送到数据库
PreparedStatement prepareStatement(String sql):创建一个PreparedStatement对象,用于将预编译SQL语句发送给数据库
CallableStatement prepareCall(String sql):创建一个CallableStatement对象,用于调用数据库存储过程
boolean isClosed():用于判断数据库连接是否被关闭
Statement接口
常用方法如下:
boolean execute(String sql):执行更新或者查询语句,返回是否有结果集
ResultSet execute(String sql):执行一个查询语句,并返回结果集
int executeUpdate(String sql):执行更新操作,返回更新的次数
Connection getConnection():获得连接
ResultSet接口
在执行查询语句后,会返回一个ResultSet查询结果集,ResultSet提供了逐行访问这些记录的方法。常用方法如下:
next():结果集向下移动
previous():结果集向上移动
getRow():得到当前行号
first():将光标定位到结果集中的第一行
last():将光标定位到结果集中的最后一行