第一,JDBC叫java數據庫連接技術,是用來實現數據庫的增、刪、改、查的接口技術。
第二,實現數據庫的連接步驟:在這之前需要導包
1,準備四大參數
a,,準備驅動類:driverClassName:com.mysql.jdbc.Driver
b,準備url:jdbc:mysql://localhost:3306/DATABASE(注:DATABASE爲所創建的數據庫名稱)
c,準備數據庫用戶
d,準備數據庫密碼
2,加載驅動類
Class.forName("com.mysql.jdbc.Driver");
3,獲取連接對象connection;
Connection con = DriverManager.getConnection(url, username, password);
第三:實現對啊網數據庫的增、刪、改、查
1,獲取Statement發送器,向數據庫發送sql語氣。
Statement stmt = con.createStatement();
2,調用Statement的 int executeUpdate(String sql)方法發送sql語氣。可以發送DML,DDL
String sql = "DELETE FROM stu";
int r = stmt.executeUpdate(sql);
注:對數據庫的增刪改查重要改 int r = stmt.executeUpdate(sql);的sql就行了。
3,執行查詢:獲取ResultSet結果集
ResultSet rs = stmt.executeQuery(sql);
4,解析ResultSet結果集
a,把行光標移動到下一行,可以調用next()方法完成。
while(rs.next()) {//把光標向下移動一行,並判斷下一行是否存在!
int empno = rs.getInt(1);//通過列編號來獲取該列的值!
String ename = rs.getString("ename");//通過列名稱來獲取該列的值
double sal = rs.getDouble("sal");
System.out.println(empno + ", " + ename + ", " + sal);
}
5,關閉資源:倒關
rs.close();
stmt.close();
con.close();//必須要關,不關就死!
public void fun3() throws Exception {
Connection con = null;//定義引用
Statement stmt = null;
ResultSet rs = null;
try {
/*
* 一、得到連接
*/
String driverClassName = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/exam";
String username = "root";
String password = "123";
Class.forName(driverClassName);
con = DriverManager.getConnection(url, username, password);//實例化
/*
* 二、創建Statement
*/
stmt = con.createStatement();
String sql = "select * from emp";
rs = stmt.executeQuery(sql);
rs.last();//把光標移動到最後一行
System.out.println(rs.getRow());
rs.beforeFirst();
/*
* 三、循環遍歷rs,打印其中數據
*
* getString()和getObject()是通用的!
*/
// while(rs.next()) {
// System.out.println(rs.getObject(1) + ", "
// + rs.getString("ename") + ", " + rs.getDouble("sal"));
// }
int count = rs.getMetaData().getColumnCount();
while(rs.next()) {//遍歷行
for(int i = 1; i <= count; i++) {//遍歷列
System.out.print(rs.getString(i));
if(i < count) {
System.out.print(", ");
}
}
System.out.println();
}
} catch(Exception e) {
throw new RuntimeException(e);
} finally {
// 關閉
if(rs != null) rs.close();
if(stmt != null) stmt.close();
if(con != null) con.close();
}
}
}