JDBC编程:获取数据库连接
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.通过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.通过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] 配置文件中需要的连接信息
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)
注:希望与各位读者相互交流,共同学习进步。
JDBC编程:获取数据库连接的更多相关文章
- JDBC 编程步骤
java访问数据库的步骤如下: 加载数据库驱动 通常使用Class.forName(driverClass)来加载驱动 // 加载MySQL驱动 Class.forName("com.mys ...
- JDBC编程学习笔记之数据库连接池的实现
在JDBC编程的时候,获取到一个数据库连接资源是很宝贵的,倘若数据库访问量超大,而数据库连接资源又没能得到及时的释放,就会导致系统的崩溃甚至宕机.造成的损失将会是巨大的.再看有了数据库连接池的JDBC ...
- JAVA jdbc获取数据库连接
JDBC获取数据库连接的帮助类 import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManage ...
- JDBC 学习笔记(四)—— JDBC 加载数据库驱动,获取数据库连接
1. 加载数据库驱动 通常来说,JDBC 使用 Class 类的 forName() 静态方法来加载驱动,需要输入数据库驱动代表的字符串. 例如: 加载 MySQL 驱动: Class.forName ...
- MYSQL 之 JDBC(二): 数据库连接(二)通过DriverManager获取数据库连接
通过DriverManager获取数据库连接 修改一下配置文件 driver=com.mysql.cj.jdbc.Driver jdbcUrl=jdbc:mysql://localhost:3306/ ...
- MYSQL 之 JDBC(一): 数据库连接(一)通过Driver接口获取数据库连接
通过Driver接口获取数据库连接 数据持久化 数据库存取技术分类 JDBC直接访问数据库 JDO技术 第三方O/R工具,如Hibernate,ibatis等JDBC是java访问数据库的基石 JDB ...
- 在IDEA中使用JDBC获取数据库连接时的报错及解决办法
在IDEA中使用JDBC获取数据库连接时,有时会报错Sat Dec 19 19:32:18 CST 2020 WARN: Establishing SSL connection without ser ...
- 【JDBC核心】获取数据库连接
获取数据库连接 要素一:Driver 接口实现类 Driver 接口: java.sql.Driver 接口是所有 JDBC 驱动程序需要实现的接口.这个接口是提供给数据库厂商使用的,不同数据库厂商提 ...
- 单独使用jdbc编程问题总结(一)
在学习Mybatis之前,我们先来回顾JDBC编程的相关知识.在此基础上深入的学习Mybatis框架.如有错误,敬请指正. (一)首先我们既然要使用jdbc,当然是要操作数据库了.创建一个名为:myb ...
随机推荐
- Windows10 iis10 arr webfarm
win10安装arr提示安装失败,但是安装说明中提升iis7及以上版本,iis10却安装失败,坑爹!安装方法: 1.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSe ...
- c#解析json字符串处理(最清晰易懂的方法)
注:博客迁移到csdn,本文最新地址:https://blog.csdn.net/sajiazaici/article/details/77647625 以下为原文 本文是全网第二简单的方法,因为我女 ...
- Maven之依赖关系
在maven的管理体系中,各个项目组成了一个复杂的关系网,但是每个项目都是平等的,是个没有贵贱高低,众生平等的世界,全球每个项目从理论上来说都可以相互依赖.就是说,你跟开发Spring的大牛们平起平坐 ...
- scss-@mixin
@mixin指令用于定义混入,它包括任选的变量和参数中的mixin名称后. scss简单示例: @mixin style { .cont{ color: #77C1EF; } } @include s ...
- vuejs+axios发送请求
Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource 目前主流的 Vue 项目,都选择 axios ...
- ArcGIS图框生成和批量打印工具 5.2支持国家2000坐标系,支持ArcGIS10.1、ArcGIS10.2,输出图片可以是TIF和JPG
主要两个功能有:生成图框.批量输出MXD和JPG http://files.cnblogs.com/gisoracle/ScalePrint.rar 1. 批量生成标准分幅图或行政区划, ...
- SharePoint Tricks - HTML & CSS & JavaScript
1. 隐藏Quick Launch <style type="text/css">/*-- Hide Quick Launch --*/#s4-leftpanel{ ...
- android launcher
1.android_launcher的源码详细分析 2.android---launcher 3.Android 4.4 Launcher3桌面源码分析 4.通过深度剖析Android之Launche ...
- 简谈 Java 中的泛型通配符
很好的一篇文章https://zhuanlan.zhihu.com/p/26681625
- spring----spring中的注解@service等的作用
service 是有用的相当于 xml配置中得bean id = service 也可以不指定 不指定相当于 bean id = com. service.service 就是这个类的全限定名 ...