jdbc(java database connectivity),即java 数据库 连接 。通过jdbc编程,可以使java应用程序和数据库进行交互。
jdbc驱动的方式有很多种,我们常用的驱动方式为: 本地协议的纯java驱动程序。
jdbc编程的第一步,就是要 获取数据库连接 。所谓的 [获取数据库连接] 其实就是创建java.sql.connection接口的实现对象。通过connection的实现对象,可以使java程序连接到数据库,并修改和获取数据库信息。
获取数据库连接有两种方式:1.通过 java.sql.driver 接口获取数据库连接,2.通过 java.sql.drivermanager(驱动管理类) 获取数据库连接。
为了使程序更具有通用性,我们可以通过读取 配置文件 的方式来获取连接数据库所需要的信息。这样可以通过修改配置文件的方式,使java程序连接到不同的数据库。
在进行jdbc编程前,要先导入数据库厂商提供的 jdbc驱动程序 。
以下是获取数据库连接的两种方式的程序演示。
[1] 通过java.sql.driver接口获取数据库连接
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
/** * 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 ); } } |
[2] 通过java.sql.drivermanager(驱动管理类)获取数据库连接
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
/** * 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 ); } } |
[3] 配置文件中需要的连接信息
1 2 3 4 |
driver=com.mysql.cj.jdbc.driver url=jdbc:mysql: //127.0.0.1:3306/[....1....]?servertimezone=gmt%2b8&usessl=false user=root password=[.... 2 ....] |
注意:
1. 上述信息中,[....1....] 替换成具体的数据库名称,[....2....] 替换成root密码。
2. 在连接高版本的 mysql 数据库时,要注意 driver 的包路径 (高版本mysql多了 [cj] ),url 连接地址的补充信息。(笔者的mysql版本为8.0)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
原文链接:https://www.cnblogs.com/EarthPioneer/p/9500267.html