JDBC入门

什么是JDBC

JDBC全称Java Database Connectivity,Java数据库连接。

JDBC是一组API,各数据库厂商提供自己的实现类,也就是数据库驱动。这样Java程序员就可以使用同一种API操作不同的数据库,需要做的只是导入相应的数据库驱动。



JDBC做了什么事

(1)连接数据库

(2)执行SQL语句

(3)处理返回结果



JDBC API简介

1. DriverManager

主要用于获取Connection对象。


2. Connection

代表数据库连接对象,每个Connection代表一个物理连接会话。要访问数据库,必须先获取数据库连接。


3. Statement

用于执行SQL语句。


4. PreparedStatement

PrepatedStatement是Statement的子接口。


5. ResultSet

结果集对象。其中包含了访问查询结果集的方法。



JDBC入门编程步骤

package com.weiheli;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JdbcDemo001 {

	public static void main(String[] args) throws SQLException {
		try {
			// 加载MySQL数据库驱动
			Class.forName("com.mysql.jdbc.Driver");
			Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");
			Statement stmt = conn.createStatement();
			ResultSet rs = stmt.executeQuery("select * from company");
			while(rs.next()) {
				System.out.println(rs.getInt(1) + " " + rs.getString(2));
			}
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}


java.sql和com.mysql.jdbc

在编写上面的代码时,发现Connection和Statement会出现在两个包中:java.sql和com.mysql.jdbc,该导入哪个?这两个包的关系是:

com.mysql.jdbc.Connection extends java.sql.Connection
com.mysql.jdbc.Statement extends java.sql.Statement 

可能是com.mysql.jdbc.*对java.sql.*做了优化。但使用java.sql.*没有兼容性问题。


总结

至此,JDBC已经入门。接下来,会介绍JDBC的各种高级特性。

下篇预告:JDBC高级



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。