Javaweb总结1—在porperties文件里获取JDBC连接属性

版权声明:@wrial https://blog.csdn.net/qq_42605968/article/details/85063694

今天来分享一下使用porperties配置文件和JDBC的联合使用
JDBC:
在我们平时连接数据库时,一般都是通过JDBC来进行连接,接下来是JDBC连接的步骤和代码演示。(大致步骤,需要运行的话加上自己的信息和所用的环境)

    static String url = "jdbc:mysql://127.0.0.1:3306/new_schema?serverTimezone=UTC&useSSL=false";
    static String user = "root";
    static String password = "*******";
    public static Connection con;
    public static Connection init() {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            con = DriverManager.getConnection(url, user, password);

        } catch (Exception e) {
            e.printStackTrace();
        }
        return con;
    }

以上是通过JDBC连接数据库,我连接的是Mysql,连接其他数据库也大致相同,就是要加载的驱动不同。
当然在最后也不要忘了关闭连接

public static void close() {
        try {
            if (con != null)
                con.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

但是呢,你们会不会觉得像我刚刚所说的,如果要更还使用Oracle数据库,那是不是好要一个一个往过改正呢?这个问题怎样解决才是最好的呢?
当然,方法肯定是有的。利用配置文件来配置信息,在此,我将用porperties配置信息来实现JDBC连接数据库。
要使用porperties当然你也要知道它大致该怎么操作对吧,因此在这先大致说一下porperties的内容该怎么写,在porperties文件中,写数据就可以大致理解为键值对,一个key对应一个value。因为它读取的时候也是通过这个关系获取的。
porperties配置文件

driver="com.mysql.cj.jdbc.Driver";
url="jdbc:mysql://127.0.0.1:3306/new_schema?serverTimezone=UTC&useSSL=false";
user="root";
password="wrial.qq.com";

通过静态代码块加载

static {
    try {
        // 1.通过当前类获取类加载器
        ClassLoader classLoader = JDBC_porper.class.getClassLoader();
        // 2.通过类加载器的方法获得一个输入流
        InputStream in = new BufferedInputStream(new FileInputStream("C:\\Users\\Administrator\\JavaMail\\src\\DB.porperties"));
        // 3.创建一个properties对象(集合)
        Properties props = new Properties();
        // 4.加载输入流
        props.load(in);
        // 5.获取相关参数的值
        driver = props.getProperty("driver");
        url = props.getProperty("url");
        user = props.getProperty("user");
        password = props.getProperty("password");
    } catch (IOException e) {
        e.printStackTrace();
    }
}

在控制台中测试结果

driver:"com.mysql.cj.jdbc.Driver";
user:"root";
password:"wrial.qq.com";
url:"jdbc:mysql://127.0.0.1:3306/new_schema?serverTimezone=UTC&useSSL=false";

Process finished with exit code 0

当然,把这些属性加到我们刚开始时候的连接JDBC的属性里,是不是就可以使用配置文件来传值了,如果要更换数据库的话,可以更换配置文件或者在文件上改来达到目的,使代码看起来一目了然。

今天的分享就到这里,是不是很简单呢。当然配置文件的功能也不止这一点,在合适的场景下都可以用得到。

猜你喜欢

转载自blog.csdn.net/qq_42605968/article/details/85063694