• JDBC_通过DriverManager获得数据库连接


    package day_18;
    
    import org.junit.Test;
    
    import java.io.InputStream;
    import java.sql.*;
    import java.sql.DriverManager;
    import java.util.Properties;
    /*
        CTRL+右击 在某个类名或者方法上即可打开其对应的API文档!
     */
    /**  DriverManager 是驱动的管理类,比直接使用driver更加方便
     *      my.sql.Driver 应用程序不再需要使用Class.forName()显式加载JDBC驱动程序。
     *      目前使用加载JDBC驱动程序的现有程序Class.forName(driverClass)将不执行任何工作。
     * 当调用方法getConnection时,
     *      DriverManager将尝试从初始化中加载的驱动程序中找到合适的驱动程序,
     *      并使用与当前小程序或应用程序相同的类加载器显式加载驱动程序。
     *  代码,一步到位:
     *      Connection connection=DriverManager.getConnection(jdbcUrl,user,password);
     *
     */
    public class testDriverManager {
        @Test
        public void test1() throws Exception{
            //1.准备数据库的连接的4个字符串
            String driverClass=null,jdbcUrl=null,user=null,password=null;
                    //jdbc:mysql:///books   ;也可以将localhost省略掉!
            //2.读取类路径下的jdbc.properties 文件
            InputStream in=
                    getClass().getClassLoader().getResourceAsStream("jdbc.properties");
            Properties properties =new Properties();
            properties.load(in);
            driverClass =properties.getProperty("driver");
            jdbcUrl=properties.getProperty("jdbcUrl");
            user = properties.getProperty("user");
            password = properties.getProperty("password");
            //3.加载数据库驱动程序(注册驱动),driver对应的实现类中有注册驱动的静态代码块
           // Class.forName(driverClass);  //
                        //或这么手动加载,也可以注册多个数据库连接的代码块
                //DriverManager.registerDriver( Class.forName(driverClass).newInstance());
    
            //4.通过DriverManager 的getConnection()方法获取数据库连接。
            Connection connection=DriverManager.getConnection(jdbcUrl,user,password);
            System.out.print(connection);   //com.mysql.jdbc.JDBC4Connection@19e1023e
    
        }
    }
  • 相关阅读:
    CHttpFile调试
    关于linux下网络编程socket 转换IP问题 inet_ntoa()
    vc使用SetTimer回调函数
    OpenGL+VC6.0开发环境搭建
    Java StringBuffer和StringBuilder类
    Java String类
    Java 异常处理
    hashcode()和equals()的作用、区别、联系
    抽象类可以继承实体类吗?
    Java 向上造型详解
  • 原文地址:https://www.cnblogs.com/zhazhaacmer/p/9959602.html
Copyright © 2020-2023  润新知