JDBC获取数据库连接-两种方法

JDBC(Java Database Connectivity),即Java数据库连接。通过JDBC编程,先获取数据库连接,然后就可以使Java应用程序和数据库进行交互。
所谓的 “获取数据库连接” 其实就是创建java.sql.Connection接口的实现对象。通过Connection的实现对象,可以使Java程序连接到数据库,并修改和获取数据库信息。

具体获取数据库连接有两种方式:

  • 1.通过java.sql.Driver接口获取数据库连接;
  • 2.通过java.sql.DriverManager(驱动管理类)获取数据库连接。

而为了使程序更具有通用性,我们可以通过读取配置文件的方式来获取连接数据库所需要的信息。这样可以通过修改配置文件的方式,使Java程序连接到不同的数据库。

在进行JDBC编程前,要先导入数据库厂商提供的JDBC驱动程序。

方法一

/**
 * 1.通过java.sql.Driver接口获取数据库连接
 * 2.使用配置文件读取连接信息,使程序更加灵活
 */
package com.pack02;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.util.Properties;

import org.junit.Test;

public class TestDriver {

 @Test
 public void testDriver() throws Exception {
  
  //1.将配置文件中的连接信息获取到Properties对象中
  InputStream is = 
    this.getClass().getClassLoader().getResourceAsStream("setting.properties");
  
  Properties setting = new Properties();
  setting.load(is);
  
  //2.从Properties对象中读取需要的连接信息
  String driverName = setting.getProperty("driver");
  String url = setting.getProperty("url");
  String user = setting.getProperty("user");
  String password = setting.getProperty("password");
  
  //3.创建Driver对象
  Driver driver = (Driver)Class.forName(driverName).newInstance();
  
  Properties info = new Properties(); //driver的connect方法中需要一个Properties型的参数
  info.put("user", user);
  info.put("password", password);
  
  //4.使用driver的connect方法获取数据库连接
  Connection conn = driver.connect(url, info);
  System.out.println( conn );
 }
} 

方法二

/**
 * 1.通过java.sql.DriverManager(驱动程序管理类)获取数据库连接
 * 2.使用配置文件读取连接信息,使程序更加灵活
 */
package com.pack02;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;

import org.junit.Test;

public class TestDriverManager {
 
 @Test
 public void testDriverManager() throws Exception {
  
  //1.将配置文件中的连接信息获取到Properties对象中
  InputStream is = 
    this.getClass().getClassLoader().getResourceAsStream("setting.properties");
    
  Properties setting = new Properties();
  setting.load(is);
    
  //2.从Properties对象中读取需要的连接信息
  String driverName = setting.getProperty("driver");
  String url = setting.getProperty("url");
  String user = setting.getProperty("user");
  String password = setting.getProperty("password");
  
  //3.加载驱动程序,即将数据库厂商提供的Driver接口实现类加载进内存;
  // 该驱动类中的静态代码块包含有注册驱动的程序,在加载类时将被执行
  Class.forName(driverName);
  
  //4.通过DriverManager类的静态方法getConnection获取数据连接
  Connection conn = DriverManager.getConnection(url, user, password);
  System.out.println( conn );
 }
}

配置文件中需要的连接信息

driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/`DatasourceName`?serverTimezone=GMT%2B8&useSSL=false
user=root
password=`password`

在连接高版本的 MySQL 数据库时,要注意 driver 的包路径 (高版本MySQL多了 “cj”,也就是多了层包名 ),url 连接地址的补充信息。

JDBC获取数据库连接-两种方法

上一篇:SQL去重复


下一篇:Linux双网卡绑定