首页 > 数据库 >JDBC 尚硅谷 days01-数据库连接方式

JDBC 尚硅谷 days01-数据库连接方式

时间:2022-09-27 17:24:39浏览次数:65  
标签:jdbc url Driver JDBC days01 mysql 硅谷 password 连接

1. JDBC(Java Database Connectivitu):是一个独立于特定数据库管理系统、通用的SQL数据库存储和操作的公共接口;

2. JDBC接口包括两个层次

  面向应用的API:Java API,抽象接口,开发使用(连接数据库,执行语句,获得结构);

  面向数据库的API:供开发商使用;

3. JDBC使用流程以及连接方式(主要记方式五,其他几种为过渡)

  

    方式五:实现了数据代码的分离,实现解耦;修改时可以直接修改,不必修改程序再打包;

    // 方式五(最终版,由1-4推进而来),将数据库连接需要的4个基本信息申明在配置文件中,通过读取配置文件的方式,获取连接
    public static void testConnection5() throws Exception {
        // 1.读取配置文件中的4个基本信息,配置文件中等号两边不加空格
        InputStream is = test.class.getClassLoader().getResourceAsStream("jdbc.properties");

        // 2.加载配置文件中的数据
        Properties pros = new Properties();
        pros.load(is);
        // 获取
        String user = pros.getProperty("user");
        String password = pros.getProperty("password");
        String url = pros.getProperty("url");
        String driverClass = pros.getProperty("driverClass");
        Class.forName(driverClass);
        // 3.获取连接
        Connection conn = DriverManager.getConnection(url, user, password);
    }
// 连接方式一:使用第三方插件的方式连接
    public static void testConnection1() throws SQLException {
        Driver dirver = new com.mysql.cj.jdbc.Driver();
        // jdbc:mysql:协议
        // localhost:ip地址
        // 3306:默认mysql的端口号
        // jdbc_learn:数据库
        String url = "jdbc:mysql://localhost:3306/abc?serverTimezone=UTC";
        // 将用户名和密码封装在Properties中
        Properties info = new Properties();
        info.setProperty("user", "root");
        info.setProperty("password", "root");
        Connection connection = dirver.connect(url, info);
    }

    // 连接方式二:使用反射方式连接
    public static void testConnection2() throws Exception {
        // 1.获取Driver实现类对象,使用反射
        // 替换方式一中使用第三方插件获取driver对象
        Class clazz = Class.forName("com.mysql.cj.jdbc.Driver");
        Driver driver = (Driver) clazz.newInstance();    
        ...
    }

        // 方式三:使用DriverManager代替Driver
    public static void testConnection3() throws Exception {
        ...
        // 1.获取Driver实现类对象
        Class clazz = Class.forName("com.mysql.cj.jdbc.Driver");
        Driver driver = (Driver) clazz.newInstance();
        // 注册驱动
        DriverManager.registerDriver(driver);
        // 获取连接
        Connection conn = DriverManager.getConnection(url, user, password);
    }    

        // 方式四:省略注册驱动
    public static void testConnection4() throws Exception {
        ...
        Class.forName("com.mysql.cj.jdbc.Driver");
        // Driver driver = (Driver) clazz.newInstance();
        // 注册驱动
        // DriverManager.registerDriver(driver);

        // mysql的Driver中存在静态代码块,自动注册

        // 3.获取连接
        Connection conn = DriverManager.getConnection(url, user, password);
    }

 

 

 

 

 

标签:jdbc,url,Driver,JDBC,days01,mysql,硅谷,password,连接
From: https://www.cnblogs.com/LinxhzZ/p/16735232.html

相关文章

  • MySQL尚硅谷-宋红康 基础补缺 days01
    基础部分查漏补缺:1.SQL99语法新特性1.1自然连接(NATURAL JOIN)相当于SQL92中的等值连接,会自动查询两张表中所有字段名相同的字段,然后做等值连接;......
  • java JDBC 读取MySQL数据
    1、准备1、mysql成功启动2、准备好jdbc驱动包,根据mysql选择版本,mysql-connector-java-5.1.46.jar  --》Stringdriver="com.mysql.jdbc.Driver";mysql-c......
  • (1)尚硅谷:SQL初步
    1.SQL分为:DML:数据操纵语言DDL:数据定义语言DCL:数据控制语言2.DML(数据操纵语言)包括:insert:增delete:删update:改select:查3.DDL(数据定义语言)包括:createtable:创建表dr......
  • JDBCUtil
     importjava.io.File;importjava.io.FileInputStream;importjava.sql.Connection;importjava.sql.Date;importjava.sql.DriverManager;importjava.sql.Prep......
  • JDBC
    JDBC案例请参考:D:\Develop\apache-maven-3.8.6-bin\repository\JDBC\jdbc-demo\src\test JDBC快速入门 注册驱动那句话现在可以不用写  MySQL8.0以下版本-J......
  • JavaWeb--JDBC:概述,DriverManager,Connection,Statement,ResultSet,PreparedStatement、数
    第一节  JDBC概述1、JDBC概念JDBC就是使用java语言操作关系数据库的一套API全称:(JavaDataBaseConnectivity)Java数据库连接2、JDBC本质......
  • Java学习-第一部分-第三阶段-第四节:JDBC和数据库连接池
    JDBC和数据库连接池笔记目录:(https://www.cnblogs.com/wenjie2000/p/16378441.html)下载会使用到的包JDBC概述基本介绍JDBC为访问不同的数据库提供了统一的接口,为使......
  • JDBC介绍
    1JDBC简介   JDBC(JavaDataBaseConnectivity):Java数据库连接技术:具体讲就是通过Java连接广泛的数据库,并对表中数据执行增、删、改、查等操作的技术。   ......
  • 尚硅谷大数据项目之电商数仓(3数仓数据同步策略)
    尚硅谷大数据项目之电商数仓(3数仓数据同步策略)(作者:尚硅谷研究院) 版本:V5.0 第1章实时数仓同步数据实时数仓由Flink源源不断从Kafka当中读数据计算,所以不需要手动同......
  • 9 JDBC复习
    JDBC:JavaDataBaseConnectivityApplication-统一驱动JDBC-MySQL驱动(mysql.Driver)-MySQL需要jar包的支持:java.sql、javax.sql、mysql-connector-jar-*.jar连接驱动建表......