zoukankan      html  css  js  c++  java
  • 读取配置文件中数据库设置信息来创建connection对象

    package com.atguigu.jdbc;

    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.Driver;
    import java.sql.SQLException;
    import java.util.Properties;

    import org.junit.Test;

    public class JDBCTest {

    /**
    * 编写一个通用的方法,在不修改源程序的情况下,可以获取任何数据库的连接
    * 解决方案:把数据库驱动Driver实现类的全类名、url、userpassword放入一个配置文件中,通过修改配置文件的方式实现
    * 和具体的数据库解耦
    * @throws ClassNotFoundException
    * @throws IllegalAccessException
    * @throws InstantiationException
    * @throws SQLException
    * @throws IOException
    */

    public Connection getConnection() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException{
    String driverClass=null;
    String jdbcUrl=null;
    String user=null;
    String password=null;
    //读取类路径下的jdbc.properties文件
    InputStream in=getClass().getClassLoader().getResourceAsStream("jdbc.properties");
    Properties properties=new Properties();
    properties.load(in);
    driverClass=properties.getProperty("driverClass");
    jdbcUrl=properties.getProperty("jdbcUrl");
    user=properties.getProperty("user");
    password=properties.getProperty("password");
    //通过反射创建Driver对象
    Driver driver=(Driver)Class.forName(driverClass).newInstance();
    Properties info=new Properties();
    info.setProperty("user", user);
    info.setProperty("password", password);
    //通过Driver的connect方法获取数据库连接
    Connection connection=driver.connect(jdbcUrl, info);
    return connection;
    }

    @Test
    public void TestGetConnection() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException{
    System.out.println(getConnection());
    }

    }

  • 相关阅读:
    Java基础回顾---JVM&JDK&JRE
    学习
    学习
    学习
    进度
    进度
    毕设进度
    学习进度
    Beta阶段项目总结
    第二阶段冲刺——seven
  • 原文地址:https://www.cnblogs.com/xiaona19841010/p/5192118.html
Copyright © 2011-2022 走看看