1.注冊驅動(千萬不要忘記)
2.建立資料庫連接
3.創建執行SQL陳述句的物件
4.執行SQL陳述句
5.處理回傳值
6.關閉jdbc物件
import java.sql.*;
public class DBUtil{
private static final String URL = "jdbc:mysql://localhost:3306/資料庫名"+"?characterEncoding=utf-8";//資料庫連接的地址
private static final String LOGIN = "root";//登錄資料庫的用戶名
private static final String PASSWORD = "xxx";//登錄資料庫的密碼
//成員變數三個
Connection conn=null;//連接物件
Statement st=null;//執行sql陳述句的物件
ResultSet rs=null;//結果集,存放查詢的結果
public ResultSet getRs() {
return rs;
}
public void setRs(ResultSet rs) {
this.rs = rs;
}
///主要的成員方法4個
void getConnection(){//1.資料庫連接
try {
//第一步,加載驅動程式
Class.forName("com.mysql.jdbc.Driver");
//第二步,連接資料庫
conn=DriverManager.getConnection(URL,LOGIN,PASSWORD);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("資料庫連接出錯,請檢查驅動程式是否存在,驅動名是否正確");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("資料庫連接出錯,請檢查登錄的用戶名密碼是否正確,資料庫服務器是否啟動");
}
}
//2.資料庫的查詢
public ResultSet executeQuery(String sql){
try {
//第三步,創建用于執行sql陳述句的物件
if(st==null){
getConnection();//包含了第一步和第二步
st=conn.createStatement();
}
//第四步:執行sql陳述句
rs=st.executeQuery(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("資料庫查詢執行出錯,請檢查sql:"+sql);
}
return rs;
}
//3.資料庫的增刪改
public int executeUpdate(String sql){
int ret=0;
try {
//第三步,創建用于執行sql陳述句的物件
if(st==null){
getConnection();//包含了第一步和第二步
st=conn.createStatement();
}
//第四步:執行sql陳述句
ret=st.executeUpdate(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
ret=-1;//失敗的時候設定為-1
System.out.println("資料庫增刪改執行出錯,請檢查sql:"+sql);
}
return ret;
}
//4.資料庫的關閉
public void close(){
try {
if (rs!=null) {
rs.close();
}
if (st!=null) {
st.close();
}
if (conn!=null) {
conn.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
注意:1.executeQuery只能執行查詢陳述句(回傳ResultSet型【結果集,用來存放多條資料】)
2.executeUpdate可以執行增加,洗掉,修改操作(回傳int型)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/385383.html
標籤:其他
