JDBC是java Database Connectivity---java数据库连接。
它是一种用于执行SQL语句的java API;
它是一组用java编程语言系的类和接口组成的,严格来说是J2EE的一部分。
在实际的生产过程中我们所使用的实际的编程语言是不一样的,使我们的连接数据库的过程变的很繁琐,这样我们就需要统一的接口将其统一起来,实现跨平台连接,这样就节省了很多为步骤,严格的体现了分层思想在实际生产中的应用;
分层的好处就是上一层只需要和下一层进行通讯即可,不牵扯过多的步骤;
JDBC为数据库开发人员提供了标准的API,据此可以构建更高级的工具和接口是数据库开大人员能够用纯java API编写数据应用程序。
package algorithm.cxg.JDBC;
import java.sql.*;
/**
* JDBC应用程序
* 1.导入相关数据库的jar包;
* 2.打开连接:使用DriverManager.getConnection(DB_URL, DB_NAME, DB_PASSWORD);创建一个
* connection对象,代表与数据的物理连接;
* 3.执行SQL语句查询:需要使用类型声明的对象建立并提交一个SQL语句;
* 4.从结果集中提取数据:要求使用适当的关于 ResultSet.getXXX() 方法来检索结果集的数据;
* 5.处理结果集:对得到的结果进行相关的操作;
* 6.清理环境,即需要明确的关闭所有的数据资源,释放内存;
* @author admin
*
*/
public class TestJDBC {
//数据库驱动
public static String JDBC_DRIVE="com.mysql.jdbc.Driver";
//数据连接地址
public static String DB_URL="jdbc:mysql://localhost/hibernate";
//数据库名称
public static String DB_NAME="root";
//数据库密码
public static String DB_PASSWORD="";
public static void main(String[] args) {
Connection connection=null;
Statement statement=null;
try {
//注册驱动程序
Class.forName("com.mysql.jdbc.Driver");
//1.打开数据库
System.out.println("数据库开始连接。。。");
connection=DriverManager.getConnection(DB_URL, DB_NAME, DB_PASSWORD);
//2.创建SQL语句
statement=connection.createStatement();
String sql;
sql="SELECT id,`name`,phone FROM member";
//3.处理结果集
ResultSet resultSet=statement.executeQuery(sql);
while (resultSet.next()) {
//检索
int id=resultSet.getInt("id");
String name=resultSet.getString("name");
int phone=resultSet.getInt("phone");
//显示
System.out.println("id:"+id+",name:"+name+",phone:"+phone);
}
resultSet.close();
statement.close();
connection.close();
} catch (SQLException se) {
//jdbc操作错误
se.printStackTrace();
} catch (Exception e) {
//Class.fromName()错误
e.printStackTrace();
} finally {
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
System.out.println("数据处理完成!");
}
}