当前位置:   article > 正文

JDBC与PostgreSQL(一)_jdbc postgresql

jdbc postgresql

目录

一、JDBC简介

二、JDBC连接PostgreSQL(方式一)

三、JDBC连接PostgreSQL(方式二)

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

 


一、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包)导入项目中。

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

  1. import java.sql.Connection;
  2. import java.sql.Driver;
  3. import java.sql.SQLException;
  4. import java.util.Properties;
  5. public class JdbcConnection1 {
  6. public static void main(String[] args) throws SQLException {
  7. // 参数:
  8. // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名
  9. String url = "jdbc:postgresql://localhost:5432/test";
  10. // 数据库用户名
  11. String user = "postgres";
  12. // 数据库密码
  13. String password = "123456";
  14. // 1. 创建驱动程序类对象
  15. Driver driver = new org.postgresql.Driver();
  16. // 2. 设置用户名和密码
  17. Properties prop = new Properties();
  18. prop.setProperty("user", user);
  19. prop.setProperty("password", password);
  20. // 3. 连接数据库,返回连接对象
  21. Connection conn = driver.connect(url, prop);
  22. }
  23. }

    在这种连接方式中,是通过手动初始化一个Driver对象,然后借助Properties类来设置参数,最后再通过Driver对象的connect()方法来连接数据库的。

三、JDBC连接PostgreSQL(方式二)

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

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

  1. import java.sql.Connection;
  2. import java.sql.Driver;
  3. import java.sql.DriverManager;
  4. import java.sql.SQLException;
  5. public class JdbcConnection2 {
  6. public static void main(String[] args) throws SQLException {
  7. // 参数:
  8. // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名
  9. String url = "jdbc:postgresql://localhost:5432/test";
  10. // 数据库用户名
  11. String user = "postgres";
  12. // 数据库密码
  13. String password = "123456";
  14. // 1. 创建驱动程序类对象
  15. Driver driver = new org.postgresql.Driver();
  16. // 2. 注册驱动程序(可以注册多个驱动程序)
  17. DriverManager.registerDriver(driver);
  18. // 3. 连接数据库,返回连接对象
  19. Connection conn = DriverManager.getConnection(url, user, password);
  20. }
  21. }

    Driver类对象在创建过程中会自动被注册到DriverManger类中,所以可以省略以上的第二个步骤,直接连接数据库:

  1. package jdbc;
  2. import java.sql.Connection;
  3. import java.sql.Driver;
  4. import java.sql.DriverManager;
  5. import java.sql.SQLException;
  6. public class JdbcConnection2 {
  7. public static void main(String[] args) throws SQLException {
  8. // 参数:
  9. // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名
  10. String url = "jdbc:postgresql://localhost:5432/test";
  11. // 数据库用户名
  12. String user = "postgres";
  13. // 数据库密码
  14. String password = "123456";
  15. // 1. 创建驱动程序类对象,驱动程序类对象在创建过程中已经被注册到MangerDriver类中
  16. Driver driver = new org.postgresql.Driver();
  17. // 2. 连接数据库,返回连接对象
  18. Connection conn = DriverManager.getConnection(url, user, password);
  19. }
  20. }

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

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

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

  1. import java.sql.Connection;
  2. import java.sql.DriverManager;
  3. import java.sql.SQLException;
  4. public class JdbcConnection3 {
  5. public static void main(String[] args) throws Exception {
  6. // 参数:
  7. // jdbc协议:postgresql子协议://主机地址:数据库端口号/要连接的数据库名
  8. String url = "jdbc:postgresql://localhost:5432/test";
  9. // 数据库用户名
  10. String user = "postgres";
  11. // 数据库密码
  12. String password = "123456";
  13. // 1. 加载Driver类,Driver类对象将自动被注册到DriverManager类中
  14. Class.forName("org.postgresql.Driver");
  15. // 2. 连接数据库,返回连接对象
  16. Connection conn = DriverManager.getConnection(url, user, password);
  17. }
  18. }

    这种方式只需要两行代码就可以让JDBC和数据库进行连接,推荐使用这种方式连接数据库

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/489878
推荐阅读
相关标签
  

闽ICP备14008679号