JDBC教程学习——由浅入深(1)
JDBC的概念
JDBC(Java DataBase Connectivity)简而言之,就是Java的数据库连接,
即就是Java和数据库连接的API(Application Programming Interface,
应用程序编程接口)。也就是说,JDBC是Java应用程序和数据库打交道的
必经之路,而一些优秀的orm框架的底层也是采用jdbc进行封装的。
JDBC与应用程序的关系
用如下一张图就可以清楚地表达清楚:
数据库连接步骤:
- 注册驱动
- 创建连接
- 创建执行SQL语句
- 执行语句
- 处理执行结果
- 释放相关资源
初次创建JDBC应用程序,如何和数据库创建连接:
1、导入包
在大多数情况下,可以使用import java.sql.*即可,如下所示:
//import required packages
import java.sql.*;
2、注册驱动
需要初始化驱动程序,这样就可以打开与数据库的通信。
通常注册驱动有是三种方法:
1)直接调用DriverManager的registerDriver方法进行驱动:
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
但会造成DriverManager中产生两个一样的驱动,并会对具体的驱
动类产生依赖。
具体来说就是:
1,加载的时候注册一次驱动(原因请看第三中注册方式),实例
化的时候又注册一次。所以两次。
2,由于实例化了com.mysql.jdbc.Driver.class,导致必须导
入该类(就是要把这个类import进去),从而具体驱动产生了依赖。
不方便扩展代码。
2)通过系统的属性设置注册驱动
System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver");
若注册多个驱动,也可以以冒号为连接。
虽然不会对具体的驱动类产生依赖;但注册不太方便,所以很少使用。
3)
Class.forName("com.mysql.jdbc.Driver");
一般是推荐这种方式的,因为不会对具体的驱动类产生依赖(就是不用import
package了)。
若出现该图片显示,则说明当前我们的程序与数据库的连接是正常的
创建连接(打开一个连接)
获取一个数据库的连接,就是通过DriverManager.getConnection()方法获取
数据库的连接
- getConnection(String url);
- getConnection(String url,Properties info);
- getConnection(String url,String user,String password);
- getConnection(String url)
将所有信息都编写在url中进行连接:
Connection conn = DriverManager.getConnection("jdbc:mysql://locahost:3306/test?user=root&password=r66t");
- getConnection(String url,Properties info)
将用户名和密码的信息存放在一个Properties键值对中:
Properties props = new Properties();
props.put("user", "root");
props.put("password", "r66t");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test",props);
- getConnection(String url,String user,String password):
通常常用方法
Connection conn = DriverManage.getConnection("jdbc:mysql:/.localhost:3306/test","root","r66t");
以上就可以完成注册和一个数据库的连接。