概念:
JDBC(Java DataBase Connectivity)是一种数据库连接技术,
能实现Java程序对各种数据库的访问。由一组使用Java语言编写的类和接口(JDBC API)
组成,他们位于java.sql以及javax.sql中。
作用:
1.建立与数据库的访问连接。
2.将编写好的SQL语句发送到数据库执行。
3.对数据库返回的执行结果进行处理。
JDBC API工作的四个环节:
1.DriverManager类:依据数据库的不同,管理JDBC驱动。
2.Connection接口:负责连接数据库并担任传送数据的任务。
3.Statement接口:有Connection产生,负责执行SQL语句。
4.ResultSet接口:负责保存Statement执行后所产生的查询结果。
JDBC访问数据库的步骤:
1.使用Class.forName()方法加载JDBC驱动类。
Class.forName("JDBC驱动类的名称");
如果系统中不存在给定的类,则会引发ClassNotFoundExceptionyichang。
这里需要try..catch..
2.使用DriverManager类获取数据库的连接。
Connection connection=DriverManager.getConnection(url,username,password);
DriverManager类跟踪已注册的驱动程序,当调用getConnection()方法时,它会
搜索整个驱动程序列表,直到找到能够连接至数据库连接字符串中的指定的数据库
的驱动程序。加载此驱动程序之后,将使用DriverManager类的getConnection()方法
建立与数据库的连接。
3.创建PreparedStatement/Statement接口的实列,发送SQL语句,
String sql="select * from table";
Statement st=connection.createStatement();
ResultSet rs=st.executeQuery(sql);
这里需要明白一点:Statement 并不执行SQL语句,只是将SQL语句
发送给数据库,由数据库来执行SQL语句。
4.处理SQL执行结果,并得到结果集,
执行SQL语句后返回一个结果集ResultSet对象。
处理结果集使用ResultSet对象的next()方法判断结果集是否包含数据。
在结果集部位空的情况下调用ResultSet的getXxx()方法得到记录中字段
对应的值。
while(rs.next()){
int id=rs.getInt("id");
String name=rs.getString("name");
}
5.释放资源
注意事项:
1.先创建的后释放,后创建的先释放。
2.将释放资源放在finally块中,确保程序最终执行释放资源的语句。
if(rs!=null){
rs.close();
}
if(st!=null){
st.close();
}
if(connection!=null){
connection.close();
}
这里需要try..catch..