暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

JDBC与PostgreSQL(一)

830

一、JDBC简介

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。也就是在开发Java程序时,可以使用JDBC来连接数据库,对数据库进行增、删、改、查等等。

JDBC规范了各种接口规范,用于Java应用程序与数据库之间的交互操作,查看JDK文档可以知道大概有以下这些接口:

各大数据库实现了这些接口,也就是构建了相应的实现类,这些实现类的集合统称为JDBC驱动程序。

各个数据库的JDBC驱动程序是不一样的,因为它们针对JDBC接口的实现方式不一样,PostgreSQL有PostgreSQL的JDBC驱动程序,MySQL有MySQL的JDBC驱动程序,Oracle有Oracle的驱动程序。

二、JDBC连接PostgreSQL(方式一)

首先要下载PostgreSQL的JDBC驱动程序,驱动下载地址:https://jdbc.postgresql.org/download.html

然后导入将JDBC驱动程序(jar包)导入项目中。

现在就可以编写程序连接数据库了:

import java.sql.Connection; import java.sql.Driver; import java.sql.SQLException; import java.util.Properties; public class JdbcConnection1 { public static void main(String[] args) throws SQLException { // 参数: // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名 String url = "jdbc:postgresql://localhost:5432/test"; // 数据库用户名 String user = "postgres"; // 数据库密码 String password = "123456"; // 1. 创建驱动程序类对象 Driver driver = new org.postgresql.Driver(); // 2. 设置用户名和密码 Properties prop = new Properties(); prop.setProperty("user", user); prop.setProperty("password", password); // 3. 连接数据库,返回连接对象 Connection conn = driver.connect(url, prop); } } 在这种连接方式中,是通过手动初始化一个Driver对象,然后借助Properties类来设置参数,最后再通过Driver对象的connect()方法来连接数据库的。
复制

三、JDBC连接PostgreSQL(方式二)

也可以通过将驱动程序对象注册到DriverManager对象中,然后利用DriverManger类的getConnection()方法来连接数据库。

这种方式不需要借助Properties类设置参数。

import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; import java.sql.SQLException; public class JdbcConnection2 { public static void main(String[] args) throws SQLException { // 参数: // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名 String url = "jdbc:postgresql://localhost:5432/test"; // 数据库用户名 String user = "postgres"; // 数据库密码 String password = "123456"; // 1. 创建驱动程序类对象 Driver driver = new org.postgresql.Driver(); // 2. 注册驱动程序(可以注册多个驱动程序) DriverManager.registerDriver(driver); // 3. 连接数据库,返回连接对象 Connection conn = DriverManager.getConnection(url, user, password); } } //Driver类对象在创建过程中会自动被注册到DriverManger类中,所以可以省略以上的第二个步骤,直接连接数据库: package jdbc; import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; import java.sql.SQLException; public class JdbcConnection2 { public static void main(String[] args) throws SQLException { // 参数: // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名 String url = "jdbc:postgresql://localhost:5432/test"; // 数据库用户名 String user = "postgres"; // 数据库密码 String password = "123456"; // 1. 创建驱动程序类对象,驱动程序类对象在创建过程中已经被注册到MangerDriver类中 Driver driver = new org.postgresql.Driver(); // 2. 连接数据库,返回连接对象 Connection conn = DriverManager.getConnection(url, user, password); } }
复制

四、JDBC连接PostgreSQL(方式三,推荐)

上面说Driver类对象在创建时会自动被注册到DriverManger类中,那么具体是在创建Driver类对象的哪个过程中被注册的呢?

其实是在Driver类的静态代码块中被注册的,这也就意味着Driver类一加载,Driver类对象就被注册到DriverManager中了。

import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class JdbcConnection3 { public static void main(String[] args) throws Exception { // 参数: // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名 String url = "jdbc:postgresql://localhost:5432/test"; // 数据库用户名 String user = "postgres"; // 数据库密码 String password = "123456"; // 1. 加载Driver类,Driver类对象将自动被注册到DriverManager类中 Class.forName("org.postgresql.Driver"); // 2. 连接数据库,返回连接对象 Connection conn = DriverManager.getConnection(url, user, password); } } 这种方式只需要两行代码就可以让JDBC和数据库进行连接,推荐使用这种方式连接数据库。
复制

文章来源:https://gitee.com/AiShiYuShiJiePingXing/postgres/blob/master/13.PostgreSQL%20%E5%BC%80%E5%8F%91%E4%B8%8E%E4%BD%BF%E7%94%A8/JDBC%E4%B8%8EPostgreSQL%EF%BC%88%E4%B8%80%EF%BC%89.md#

最后修改时间:2021-08-05 18:32:27
文章转载自爱是与世界平行,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论