JDBC简介
1.JDBC是 Java Database Connectivity(Java数据库连接)的缩写,使用JDBC可以实现对数据库的访问。
2.Java是跨操作系统平台的,而通过JDBC可以实现跨数据库平台,JDBC只是一个抽象的编程接口,通过加载不同的数据库驱动,可以实现和不同数据库的通信,例如:MySQL、Oracle、SQLServer等
3.在Java中有两个包 java.sql 和 javax.sql,它们包含JDBC编程的所有接口。
4.JDBC常用接口和类:
DriverManager 驱动管理器,可获得数据库连接
Connection 数据库连接接口
Statement 语句接口,用来静态操作SQL语句
PreparedStatement 预定义语句,用来动态操作SQL语句(常用)
CallableStatement 可以调用存储过程的预定义语句
ResultSet 结果集,保存数据记录的结果集合
ResultSetMetaData 结果集 元数据,如:列名称、列类型等。
DatabaseMetaData 数据库 元数据,如数据库名称、版本等。
5.JDBC的编程步骤如下:
1)加载数据库驱动(需先导入jar包)
2)获得数据库连接
3)创建语句
4)执行查询
5)遍历结果集
6)关闭数据库连接
jar包下载地址:
https://dev.mysql.com/downloads/connector/j/
6.实例
1)新建一个动态web项目,将下载后的jar包复制到 WebContent——>WEB-INF——>lib 目录下
2)在src下创建一个Java类,并指定其包名
3)具体流程
编译运行后,结果如下图所示:
详细代码如下:
package jdbc.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ConnectionFactory {
public static void main(String[] args) {
//此时导入的是Connection是java.sql下的Connection接口,切记别导错。
Connection conn = null;
try {
//1.加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
//2.获得数据库连接
//DriverManager.getConnection(url, user, password)
//url:"协议:子协议://ip地址:端口号/数据库名" user:"用户名" password:"密码"
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String sql = "select id,name from student";
try {
//3.创建语句
Statement stmt = conn.createStatement();
//4.执行查询
ResultSet rs = stmt.executeQuery(sql);
//5.遍历结果集
while(rs.next()){
// int id = rs.getInt("id");
// String name = rs.getString("name");
int id = rs.getInt(1);
String name = rs.getString(2);
System.out.println("id="+id+" name="+name);
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
//6.关闭数据库连接
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}