資料結構-連結串列習題
阿新 • • 發佈:2020-11-20
1.匯入jar包 mysql-connector-java-5.1.7-bin.jar。並加入到環境中。
2.註冊驅動,獲取連線
//註冊驅動 Class.forName("com.mysql.jdbc.Driver");//com.mysql.jdbc.Driver mysql驅動
//獲取連結 con = DriverManager.getConnection("jdbc:mysql:///資料庫名稱", "賬號", "密碼");
3.不推薦使用Statement物件執行sql語句,有sql注入的風險。
@Test public void test(){ String sql = "select * from t_user WHERE id ="+1; try { Statement stmt = con.createStatement(); ResultSet set = stmt.executeQuery(sql); while(set.next()){ int id = set.getInt("id"); String user_name = set.getString("user_name"); String password = set.getString("password"); System.out.println(id+"**"+user_name+"**"+password); } } catch (SQLException e) { e.printStackTrace(); } }
4.推薦使用PrepareStatement物件執行sql語句
@Test public void test02(){ String sql = "select * from t_user WHERE id = ?";
PrepareStatement ps = null; try { ps = con.prepareStatement(sql); ps.setInt(1,1); ResultSet set = ps.executeQuery(); while(set.next()){ int id = set.getInt("id"); String user_name = set.getString(2); String password = set.getString("password"); System.out.println(id+"**"+user_name+"**"+password); } } catch (SQLException e) { e.printStackTrace(); }
finally{
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
1. executeQuery();返回一個ResultSet結果集
2. execute(); //返回型別為boolean,是否執行成功
3. executeUpdate(); //返回int型別,是影響的行數
4.setXxx(... , ...);對問號進行賦值Xxx:代表資料型別
兩個引數第一個引數是對應第幾個?號佔位符下標從1開始,第二個是賦的值
5.getXxx(...);獲取對應的欄位的值
Xxx:代表資料型別
引數可以寫資料庫中的欄位名,也可以寫序號下標從1開始
6.關閉連線 close();
前面後執行那個就先關閉那個,上面從上往下執行,關閉的時候就從下往上關閉。