這個寫了n次,每次寫每次忘。
所以打算重新寫好並記錄下來。
1 . 搭好環境
mysql+navicate+eclipse+tomcat
2 . 將數據庫相關的jar包放到 lib 文件夾下,並且build path 中調好配置
3 .主體代碼分爲兩部分
(1) db.properties 這是數據庫的配置文件
user=root
url=jdbc:mysql://localhost:3306/graduation_test
password=admin
driver=com.mysql.jdbc.Driver
user 和 password 表示 mysql 數據庫建立的時候連接的名字和密碼
url 指的是數據庫所在的路徑,graduation_test 是數據庫的名字
(2) DBConnection.java
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;
public class DBConnection {
private static String user;
private static String password;
private static String url;
//靜態代碼塊,實現程序一開始運行就加載配置文件
static {
try {
ClassLoader classLoader = DBConnection.class.getClassLoader();
InputStream is = classLoader.getResourceAsStream("./db.properties");
Properties props = new Properties();
props.load(is);
url = props.getProperty("url");
user = props.getProperty("user");
password = props.getProperty("password");
// 註冊驅動
Class.forName(props.getProperty("driver"));
} catch (ClassNotFoundException e) {
e.printStackTrace();
throw new RuntimeException("找不到驅動");
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("加載properites文件錯誤");
}
}
// 獲取連接
public static Connection getConnection() throws Exception {
return DriverManager.getConnection(url, user, password);
}
// 關閉連接有結果集(select)
public static void close(ResultSet rs, Statement stat, Connection conn)
throws Exception {
if (rs != null) {
rs.close();
}
if (stat != null) {
stat.close();
}
if (conn != null) {
conn.close();
}
}
// 關閉連接無結果集(delete update insert)
public static void close(Statement stat, Connection conn) throws Exception {
if (stat != null) {
stat.close();
}
if (conn != null) {
conn.close();
}
}
//在main函數中測試是否連接成功
//測試方法:
//直接調用getConnection()方法,如果連接成功則會成功運行getConnection()方//法,並接着運行Syso語句。否則會直接拋出異常。
public static void main(String[] args) {
try {
getConnection();
System.out.println("連接成功!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
//顯示”連接成功!”則表示連接成功
//直接運行這個java文件就行,不用在服務器上跑。
經過測試,如果url 、user 、或者password不對,則會拋出異常
若提前沒有加入數據庫驅動 jar包,仍會拋出異常。