java讀取配置文件並使用


思維導圖:需要創建的文件和類:首先建立DBConfig.property文件--->創建類DBUtil---->創建其他使用該類的方法

(1)讀取過程及初步理解:首先DBUtil類中通過 Properties prop = new Properties();的prop.load(this.getClass().getClassLoader().getResourceAsStream("com/util/DBConfig.property"));加載配置文件,

url = prop.getProperty("MYSQLURL");
password = prop.getProperty("password");
user = prop.getProperty("user");
driver = prop.getProperty("MYSQLDriver");
Class.forName(driver);

通過以上對驅動進行加載。

再將該驅動加載對象作為返回值return DriverManager.getConnection(url,user,password);

悟:理解了原理,其實就是讀取文件對象,賦值,然后將帶着配置信息的數據對象返回給其他類/對象使用的過程。

詳細如下:

1、配置文件(com/util/DBConfig.property)

#數據庫類型:1為MYSQL,默認為1
DBType=1

#MYSQL 數據庫連接信息
#MYSQL 數據庫驅動程序
MYSQLDriver=com.mysql.jdbc.Driver

#MYSQL數據庫連接字符串
#127.0.0.1:3306 為數據庫地址和端口
#love 為數據庫名,user為登錄名,password為登錄密碼。請自行更改
MYSQLURL=jdbc:mysql://127.0.0.1:3306/love?user=root&password=123456&useUnicode=true&characterEncoding=UTF-8

#您還可以添加其他的數據庫

 

2、讀取數據庫文件以及在main方法中測試(DBUtil)

package com.util;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;


public class DBUtil {
public Connection getConn() {

Properties prop = new Properties();
String url = null;
String password = null;
String user = null;
String driver = null;

try {
prop.load(this.getClass().getClassLoader().getResourceAsStream("com/util/DBConfig.property"));
url = prop.getProperty("MYSQLURL");
password = prop.getProperty("password");
user = prop.getProperty("user");
driver = prop.getProperty("MYSQLDriver");
Class.forName(driver);
return DriverManager.getConnection(url,user,password);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}

return null;
}
public static void main(String[] args) {
DBUtil sConnection = new DBUtil();
Connection connection = sConnection.getConn();
Statement statement = null;
ResultSet set = null;
try {
statement = connection.createStatement();
set = null;
String sql = "select *from user order by id desc;";
set = statement.executeQuery(sql);
if(!set.next()){//判斷如果沒有記錄
System.out.println("沒有記錄");
}else {
while (set.next()) {
System.out.println(set.getString("uname"));
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
set.close();
statement.close();
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


}
}

3、測試結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM