zoukankan      html  css  js  c++  java
  • JDBC(1)——获取数据库连接

    主要讲通过 DriverManager 连接

    DriverManager 是驱动的管理类.
     1). 可以通过重载的 getConnection() 方法获取数据库连接. 较为方便
     2). 可以同时管理多个驱动程序: 若注册了多个数据库连接, 则调用 getConnection()
         方法时传入的参数不同, 即返回不同的数据库连接。

    //1. 准备连接数据库的 4 个字符串. 
            //驱动的全类名.
            String driverClass = "com.mysql.jdbc.Driver";
            //JDBC URL
            String jdbcUrl = "jdbc:mysql:///test";
            //user
            String user = "root";
            //password
            String password = "1230";
            
            //2. 加载数据库驱动程序(对应的 Driver 实现类中有注册驱动的静态代码块.)
            Class.forName(driverClass);
            
            //3. 通过 DriverManager 的 getConnection() 方法获取数据库连接. 
            Connection connection = 
                    DriverManager.getConnection(jdbcUrl, user, password);
            System.out.println(connection); 

    进一步进行封装 1)参数提取到文件中

            2)封装到方法里

    注意:
        1).  属性文件对应 Java 中的 Properties 类
        2).  可以使用类加载器加载 bin 目录(类路径下)的文件

    public Connection getConnection() throws Exception{
            //1. 准备连接数据库的 4 个字符串. 
            //1). 创建 Properties 对象
            Properties properties = new Properties();
            
            //2). 获取 jdbc.properties 对应的输入流, src / jdbc.properties
            InputStream in = 
                    this.getClass().getClassLoader().getResourceAsStream("jdbc.properties");
            
            //3). 加载 2) 对应的输入流
            properties.load(in);
            
            //4). 具体决定 user, password 等4 个字符串. 
            String user = properties.getProperty("user");
            String password = properties.getProperty("password");
            String jdbcUrl = properties.getProperty("jdbcUrl");
            String driver = properties.getProperty("driver");
            
            //2. 加载数据库驱动程序(对应的 Driver 实现类中有注册驱动的静态代码块.)
            Class.forName(driver);
            
            //3. 通过 DriverManager 的 getConnection() 方法获取数据库连接. 
            return DriverManager.getConnection(jdbcUrl, user, password);
        }

     src / jdbc.properties

    #driver=oracle.jdbc.driver.OracleDriver
    #jdbcUrl=jdbc:oracle:thin:@localhost:1521:orcl
    #user=scott
    #password=java
    
    driver=com.mysql.jdbc.Driver
    jdbcUrl=jdbc:mysql://localhost:3306/atguigu
    user=root
    password=1230
    纸上学来终觉浅,觉知此事需躬行
  • 相关阅读:
    一、初识数据库
    面向对象—基础、名称空间、三大特性
    六、内置函数
    五、迭代器、生成器、装饰器
    四、global和nonlocal、函数名应用、格式化输出
    三、名称空间
    二、函数的参数
    shell脚本
    线性代数
    [模块] python调用java代码-jpype
  • 原文地址:https://www.cnblogs.com/dreamHighMjc/p/7452730.html
Copyright © 2011-2022 走看看