java使用JDBC连接数据库的五种方式(IDEA版)

下面是对“Java使用JDBC连接数据库的五种方式(IDEA版)”的完整攻略:

一、使用JDBC连接数据库的五种方式

1.1 方式一:使用Class.forName方式连接

使用Class.forName方式连接数据库需要导入jdbc驱动jar包,代码示例:

// 加载MySql数据库驱动程序
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
String username = "root";
String password = "123456";
Connection connection = DriverManager.getConnection(url, username, password);

1.2 方式二:使用DriverManager注册驱动连接数据库

使用DriverManager注册驱动连接数据库,代码示例:

String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
String username = "root";
String password = "123456";
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
Connection connection = DriverManager.getConnection(url, username, password);

1.3 方式三:使用DataSource连接数据库

使用DataSource连接数据库,代码示例:

String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
String username = "root";
String password = "123456";
BasicDataSource basicDataSource = new BasicDataSource();
basicDataSource.setDriverClassName("com.mysql.jdbc.Driver");
basicDataSource.setUrl(url);
basicDataSource.setUsername(username);
basicDataSource.setPassword(password);
Connection connection = basicDataSource.getConnection();

1.4 方式四:使用JNDI连接池连接数据库

使用JNDI连接池连接数据库,代码示例:

Context ctx = new InitialContext();
DataSource dataSource = (DataSource)ctx.lookup("java:comp/env/jdbc/testDB");
Connection connection = dataSource.getConnection();

1.5 方式五:使用第三方连接池连接数据库

使用第三方连接池连接数据库,需要导入相应的jar包,这里以c3p0为例,代码示例:

String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
String username = "root";
String password = "123456";
ComboPooledDataSource cpds = new ComboPooledDataSource();
cpds.setDriverClass("com.mysql.jdbc.Driver");
cpds.setJdbcUrl(url);
cpds.setUser(username);
cpds.setPassword(password);
Connection connection = cpds.getConnection();

二、示例

以上是五种连接方式的介绍,下面是一个示例代码用于插入一条数据:

// 定义连接对象
Connection connection = null;
// 定义statement对象
Statement statement = null;
try {
    // 加载MySQL驱动程序
    Class.forName("com.mysql.jdbc.Driver");
    String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
    String username = "root";
    String password = "123456";
    // 创建连接对象
    connection = DriverManager.getConnection(url, username, password);
    // 执行sql语句
    statement = connection.createStatement();
    String sql = "insert into user(name, age) values('tom', 20)";
    statement.executeUpdate(sql);
} catch (ClassNotFoundException e) {
    e.printStackTrace();
} catch (SQLException e) {
    e.printStackTrace();
} finally {
    try {
        if (statement != null) {
            statement.close();
        }
        if (connection != null) {
            connection.close();
        }
    } catch (SQLException e) {
        e.printStackTrace();
    }
}

此外,还可以查看以下链接中的代码示例来进一步学习和实践JDBC的五种连接方式:

  • https://www.cnblogs.com/sy-007/p/8890482.html
  • https://www.jb51.net/article/172549.htm

希望以上对JDBC的五种连接方式的介绍和示例代码对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java使用JDBC连接数据库的五种方式(IDEA版) - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • java解析dbf之通过javadbf包生成和读取dbf文件

    下面是“java解析dbf之通过javadbf包生成和读取dbf文件”的完整攻略,包含以下主要内容: javadbf包是什么,如何引入 生成dbf文件 读取dbf文件 1. javadbf包是什么,如何引入 javadbf包是用于处理dbf文件格式的Java库,它支持生成、读取和写入dbf文件。这个库的最新版本是2.0.0-beta,你可以在github上找…

    Java 2023年5月19日
    00
  • OkHttp Address already in use: no further information异常

      说下场景,我的程序在多线程场景下一个循环体中处理业务数据,其中需要调用一个外部http接口去获取一些数据,程序总会在在本地执行一段时间后会抛出Address already in use: no further information错误。   这是大量并发场景下出现的问题,经过查阅原因是OkHttp的链接没有被有效回收和复用导致的端口资源占用,okHt…

    Java 2023年4月18日
    00
  • 关于kafka-consumer-offset位移问题

    下面是关于Kafka消费者位移问题的详细攻略: 简介 在Kafka中,消费者通过消费者组(group)来消费消息。每个消费者组都有自己的消费者位移(offset),用于标识每个消费者消费消息的位置。消费者位移是在消费者端保存的,用于记录消费者消费的消息位置。这样,当消费者重启或者消费者出现故障时,就能够准确地恢复消费进度。 消费者位移有什么问题? 位移丢失。…

    Java 2023年5月20日
    00
  • Java 实战项目锤炼之网上图书馆管理系统的实现流程

    Java 实战项目锤炼之网上图书馆管理系统的实现流程 本文将详细讲解如何实现一个网上图书馆管理系统,包括前端页面设计、后端接口实现等方面的内容。 前端页面设计 1. 首页 首页应该包含以下内容: 搜索框:用户可以在搜索框中输入书名、作者、ISBN等信息,以便找到他们想要借阅的书籍。 推荐书单:系统会根据用户的阅读历史等信息,为用户推荐一些可能感兴趣的书籍。 …

    Java 2023年5月24日
    00
  • struts2中类型转换实例代码

    Struts2中类型转换可以将String类型的参数转换为具体的对象类型,比如将字符串形式的日期转换为Date类型。下面是struts2中类型转换的实例代码: 1. 实现TypeConverter接口 public class DateConverter implements TypeConverter { @Override public Object c…

    Java 2023年5月20日
    00
  • spring通过jdbc连接数据库

    介绍 Spring Framework是一个非常受欢迎的Java应用程序开发框架。除了提供基于IoC容器和AOP的组件模型外,Spring还提供了众多的对事实标准技术的集成支持,数据库访问就是其中之一。在本篇文章中,我们将学习如何使用Spring提供的JDBC支持访问数据库。 前置知识 在开始之前,你需要具备以下技能: Java基础知识,包括类、方法、包、接…

    Java 2023年5月20日
    00
  • 详解java自定义类

    详解Java自定义类 在Java中,我们可以使用自定义类创建对象并使用。这些对象可以有自己的属性和方法。 创建一个Java自定义类 创建一个Java自定义类需要遵循以下步骤: 用 class 关键字定义类名。类名必须以大写字母开头,遵循驼峰命名法。 在类中定义属性。属性可以是任何数据类型,包括用户自定义类型。属性定义应该在方法之前。 在类中定义方法。方法是可…

    Java 2023年5月20日
    00
  • Linux(CentOS7)安装Tomcat与设置Tomcat为开机启动项(tomcat8为例)

    以下是详细的攻略: Linux(CentOS7)安装Tomcat 首先,需要下载Tomcat安装包。可以去Tomcat官网下载最新版的二进制版本。在本次攻略中,我们将以tomcat8为例进行说明。 下载完成之后,将tomcat8安装包上传到CentOS系统上的指定路径,比如/usr/local/src/下。 接下来,按照以下步骤安装Tomcat: 第一步:解…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部