返回顶部
首页 > 资讯 > 数据库 >JDBC系列:(1)通过JDBC连接数据库
  • 509
分享到

JDBC系列:(1)通过JDBC连接数据库

2024-04-02 19:04:59 509人浏览 泡泡鱼
摘要

1、什么是JDBC2、JDBC连接数据库的三种方式2.1、第一种实现方式2.2、第二种实现方式2.3、第三种实现方式3、com.Mysql.jdbc.Driver的内部实现1、什么是JDBC使用java代码

  • 1、什么是JDBC

  • 2、JDBC连接数据库的三种方式

  • 2.1、第一种实现方式

  • 2.2、第二种实现方式

  • 2.3、第三种实现方式

  • 3、com.Mysql.jdbc.Driver的内部实现

1、什么是JDBC


使用java代码(程序)发送sql语句的技术

使用jdbc发送sql前提需要知道:数据库的IP地址、端口、数据名、用户名和密码。


JDBC的URL=协议名+子协议名+数据源名。
a 协议名总是“jdbc”。
b 子协议名由JDBC驱动程序的编写者决定。
c 数据源名也可能包含用户与口令等信息;这些信息也可单独提供。
几种常见的数据库连接


-------------------------------oracle------------------
驱动:oracle.jdbc.driver.OracleDriver
URL:jdbc:oracle:thin:@Machine_name:port:dbname
注:machine_name:数据库所在的机器的名称;
      port:端口号,默认是1521

-------------------------------mysql-------------------
驱动:com.mysql.jdbc.Driver
URL:jdbc:mysql://machine_name:port/dbname
注:machine_name:数据库所在的机器的名称;
      port:端口号,默认3306    

---------------------------SQL Server------------------
驱动:com.microsoft.jdbc.sqlserver.SQLServerDriver
URL:jdbc:microsoft:sqlserver://<machine_name><:port>;DatabaseName=<dbname>
注:machine_name:数据库所在的机器的名称;
      port:端口号,默认是1433

--------------------------DB2--------------------------
驱动:com.ibm.db2.jdbc.app.DB2Driver
URL:jdbc:db2://<machine_name><:port>/dbname
注:machine_name:数据库所在的机器的名称;
      port:端口号,默认是5000
-------------------------------------------------------


2、JDBC连接数据库的三种方式




2.1、第一种实现方式


package com.rk.db.a_jdbc;

import java.sql.Driver;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;



public class Demo01
{
	public static void main(String[] args) throws SQLException
	{
			// jdbc协议:数据库子协议:主机:端口/连接的数据库   //
			String url = "jdbc:mysql://localhost:3306/testdb";
			String username = "root";
			String passWord = "root";
			
			//1.创建驱动程序类对象
			Driver driver = new com.mysql.jdbc.Driver();
			
			//设置用户名和密码
			Properties props = new Properties();
			props.setProperty("user", username);
			props.setProperty("password", password);
			
			//2.连接数据库,返回连接对象
			Connection conn = driver.connect(url, props);
			
			System.out.println(conn);
	}
}

2.2、第二种实现方式


package com.rk.db.a_jdbc;

import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;


public class Demo02
{
	public static void main(String[] args) throws SQLException
	{
		String url = "jdbc:mysql://localhost:3306/testdb";
		String username = "root";
		String password = "root";
		
		Driver driver = new com.mysql.jdbc.Driver();
		//1.注册驱动程序(可以注册多个驱动程序)
		DriverManager.reGISterDriver(driver);
		
		//2.连接到具体的数据库
		Connection conn = DriverManager.getConnection(url, username, password);
		System.out.println(conn);
	}
}

2.3、第三种实现方式


package com.rk.db.a_jdbc;

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;

public class Demo03
{
	public static void main(String[] args) throws ClassNotFoundException, SQLException
	{
		String url = "jdbc:mysql://localhost:3306/testdb";
		String user = "root";
		String password = "root";
		
		//通过得到字节码对象的方式加载静态代码块,从而注册驱动程序
		Class.forName("com.mysql.jdbc.Driver");
		
		//连接到具体的数据库
		Connection conn = DriverManager.getConnection(url,user,password);
		System.out.println(conn);
	}

}

3、com.mysql.jdbc.Driver的内部实现



在这里主要解释一个问题,也就是在2.3中,并没有写代码用DriverManager对com.mysql.jdbc.Driver的实例进行注册,原因就在于com.mysql.jdbc.Driver的源码当中。

在com.mysql.jdbc.Driver类中提供了一个static(静态)代码段,如下:

java.sql.DriverManager.registerDriver(new Driver());

完整代码如下:


------com.mysql.jdbc.Driver类中提供了static代码段,主动向DriverManager进行注册
java.sql.DriverManager.registerDriver(new Driver());

package com.mysql.jdbc;

import java.sql.SQLException;

public class Driver extends NonRegisteringDriver implements java.sql.Driver {
    //
    // Register ourselves with the DriverManager
    //
    static {
        try {
            java.sql.DriverManager.registerDriver(new Driver());
        } catch (SQLException E) {
            throw new RuntimeException("Can't register driver!");
        }
    }

    
    public Driver() throws SQLException {
        // Required for Class.forName().newInstance()
    }
}




您可能感兴趣的文档:

--结束END--

本文标题: JDBC系列:(1)通过JDBC连接数据库

本文链接: https://lsjlt.com/news/43675.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JDBC系列:(1)通过JDBC连接数据库
    1、什么是JDBC2、JDBC连接数据库的三种方式2.1、第一种实现方式2.2、第二种实现方式2.3、第三种实现方式3、com.mysql.jdbc.Driver的内部实现1、什么是JDBC使用java代码...
    99+
    2024-04-02
  • JDBC连接数据库
    JDBC连接数据库主要有以下几个步骤:1、加载JDBC驱动程序Class.forName("com.mysql.jdbc.Driver");加载成功后,会将Driver类的实例注册到DriverManage...
    99+
    2024-04-02
  • JDBC 连接数据库
    一、通过Driver接口直接连接 public Connection getConnectionByDriver() throws Exception{  ...
    99+
    2024-04-02
  • jdbc连接MySql数据库
    jdbc连接MySql数据库 package com.zhy; import com.mysql.jdbc.Driver; import java.sql.*; public class TestJdbc { publi...
    99+
    2020-09-18
    jdbc连接MySql数据库 数据库入门 数据库基础教程 数据库 mysql
  • Java数据库连接(JDBC)
    JDBC(Java DataBase Connectivity) JDBC概念 JDBC 就是使用Java语言操作关系型数据库的一套API全称:( Java DataBase Connectivi...
    99+
    2023-09-22
    数据库 java mysql
  • JDBC---Java连接数据库
    第一章 JDBC概述 1.1 JDBC概述 jdbc是(Java Database Connectivity)单词的缩写,翻译为java连接数据库。是Java程序连接数据库的技术总称。 JDBC由两个...
    99+
    2023-10-20
    java 数据库 mysql
  • JDBC | JDBC API详解及数据库连接池
    👑 博主简介:    🥇 Java领域新星创作者    🥇 阿里云开发者社区专家博主、星级博主、技术博主 🤝 交流社区:BoBooY(优质编程学习笔记社区) 前言:...
    99+
    2023-08-20
    java 数据库 mysql
  • JDBC连接数据库实例
    package javacommon.base; import java.sql.Connection; import java.sql.PreparedStatement;...
    99+
    2024-04-02
  • jdbc怎么连接数据库
    小编给大家分享一下jdbc怎么连接数据库,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!jdbc连接数据库的步骤:1、加载jdbc驱动程序;2、创建数据库的连接;3...
    99+
    2023-06-14
  • Jdbc 链接数据库(含连接池)
    package com.ygsoft.gris.mapp.materialmanage.impl.util;import java.math.BigDecimal;import java.sql.Calla...
    99+
    2024-04-02
  • JDBC连接达梦7数据库
    DM JDBC 介绍    DM JDBC 驱动程序是 DM数据库的 JDBC 驱动程序,它是一个能够支持基本 SQL 功能 的通用应用程序编程接口,支持一般的 SQL 数据库访问。    通过 JDBC 驱动程序,用户可以在应用...
    99+
    2019-12-30
    JDBC连接达梦7数据库
  • jdbc 数据库的连接方法
    这篇文章主要介绍“jdbc 数据库的连接方法”,在日常操作中,相信很多人在jdbc 数据库的连接方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jdbc 数据库的连接方法”...
    99+
    2024-04-02
  • JDBC中如何连接数据库
    这篇文章主要为大家展示了“JDBC中如何连接数据库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JDBC中如何连接数据库”这篇文章吧。连接数据库的步骤:注册驱动...
    99+
    2024-04-02
  • Java使用JDBC连接数据库
    目录一、JDBC简介二、JDBC中常用类和接口1、驱动程序管理类(DriverManager)2、声明类(Statement)3、数据库连接类 (Connection)4、结果集合类...
    99+
    2024-04-02
  • jdbc如何连接oracle数据库
    要连接Oracle数据库,您需要执行以下步骤:1. 获取Oracle JDBC驱动程序:首先,您需要下载并获取Oracle JDBC...
    99+
    2023-08-08
    jdbc oracle
  • jdbc怎么连接mysql数据库
    要连接MySQL数据库,需要以下步骤:1. 加载MySQL的JDBC驱动程序。可以从MySQL官方网站下载并安装MySQL Conn...
    99+
    2023-08-19
    jdbc mysql数据库
  • jdbc怎么连接sqlserver数据库
    1、下载并安装SQL Server JDBC驱动程序,可以从Microsoft官方网站上下载相应的驱动程序。 2、在Java项目中导...
    99+
    2024-04-09
    jdbc sqlserver
  • jdbc如何连接sqlserver数据库
    要连接SQL Server数据库,可以按照以下步骤使用JDBC: 1、确保已经安装了SQL Server数据库,并且已经创建了数据库...
    99+
    2024-04-18
    jdbc sqlserver
  • sqlserverdriver中怎么通过 jdbc连接sqlserver
    这篇文章将为大家详细讲解有关sqlserverdriver中怎么通过 jdbc连接sqlserver,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、下载驱...
    99+
    2024-04-02
  • 【Java】JDBC 数据库连接的演变
    环境搭建 使用Maven工程的依赖项,如果普通工程就点注释的地址下载jar包即可 mysql mysql-connector-java ...
    99+
    2017-04-28
    【Java】JDBC 数据库连接的演变 数据库入门 数据库基础教程
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作