JDBCUtil工具類

一、不用properties

package util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JDBCUtilsConfig {
	public static String url = "jdbc:mysql://localhost:3306/book?serverTimezone=GMT%2B8&useSSL=false";
	public static String user = "root";
	public static String password = "root";
	public static Connection conn;
	
	private JDBCUtilsConfig(){}
	
	static {
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
			conn = DriverManager.getConnection(url, user, password);
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			throw new RuntimeException("數據庫連接失敗!");
		} 
	}
	
	public static Connection getConnection() {
		return conn;
	}
	
	public static void close(ResultSet rs, Statement stat, Connection conn) {
		if (rs != null) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (stat != null) {
			try {
				stat.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (conn != null) {
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
}

二、用properties

database.properties文件 放在src下
內容:
driverClass=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/book?serverTimezone=GMT%2B8&useSSL=false
username=root
password=root

JDBCUtilsConfig:

package util;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;

public class JDBCUtilsConfig {
	public static String url;
	public static String username;
	public static String password;
	public static Connection conn;
	public static String driverClass;
	
	private JDBCUtilsConfig(){}
	
	static {
		try {
			readConfig();
			Class.forName(driverClass);
			conn = DriverManager.getConnection(url, username, password);
		} catch (Exception e) {
			throw new RuntimeException("數據庫連接失敗");
		} 
	}
	
	public static Connection getConnection() {
		return conn;
	}
	
	private static void readConfig() throws Exception {
	   	InputStream in = JDBCUtilsConfig.class.getClassLoader()
	   			.getResourceAsStream("database.properties");
	   	Properties pro = new Properties();
	   	pro.load(in);
	   	//使用getProperty(key),通過key獲得需要的值
	   	driverClass = pro.getProperty("driverClass");
	   	url = pro.getProperty("url");
	   	username = pro.getProperty("username");
	   	password = pro.getProperty("password");
	}
	public static void main(String[] args) {
		
	}
 
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章