Connection(数据库连接对象)
生活随笔
收集整理的這篇文章主要介紹了
Connection(数据库连接对象)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Connection(數據庫連接對象)
簡介:通過代碼來講解Connection的含義。
推薦學習路線:JDBC數據庫的連接->Connection(數據庫連接對象)->Driud數據庫連接池的使用->Statement->ResultSet->通過PreparedStatement預防SQL注入->JDBC增刪改查案例講解 大家跟著敲完基本就可以JDBC基礎畢業了。
演示代碼
/*** JDBC API 詳解:Connection*/ public class JDBCDemo_Connection {public static void main(String[] args) throws Exception {//1. 注冊驅動Class.forName("com.mysql.cj.jdbc.Driver");//2. 獲取連接// String url = "jdbc:mysql://127.0.0.1:3306/books"; // 如果是mysql5這樣寫String url = "jdbc:mysql://localhost:3306/books?serverTimezone=GMT%2B8&useOldAliasMetadataBehavior=true"; // 如果是mysql8這樣寫String username = "root";String password = "1234";Connection conn = DriverManager.getConnection(url, username, password);//3. 定義sqlString sql1 = "update book set price = price - 8 where reclD = 1";String sql2 = "update book set price = price - 8 where reclD = 2";String sql3 = "update book set price = price - 8 where reclD = 3";//4. 獲取執行sql的對象 StatementStatement stmt = conn.createStatement();try {// ============開啟事務==========conn.setAutoCommit(false); // 加上這幾句之后 如果發生異常就會回滾 然后數據不會發生改變// 如果沒有發生異常 但是發現數據庫里面的數據沒有改變// 可以把這里改成true 不改的話內存里面的數據改了 但是顯示的沒有改//5. 執行sqlint count1 = stmt.executeUpdate(sql1);//受影響的行數//6. 處理結果System.out.println(count1);//5. 執行sqlint count2 = stmt.executeUpdate(sql2);//受影響的行數//6. 處理結果System.out.println(count2);// ============提交事務==========//程序運行到此處,說明沒有出現任何問題,則需求提交事務conn.commit();} catch (Exception e) {// ============回滾事務==========//程序在出現異常時會執行到這個地方,此時就需要回滾事務conn.rollback();e.printStackTrace();}//7. 釋放資源stmt.close();conn.close();} }運行結果:
代碼分析
使用Connection的步驟
導入自己的各種信息
//1. 注冊驅動Class.forName("com.mysql.cj.jdbc.Driver");//2. 獲取連接// String url = "jdbc:mysql://127.0.0.1:3306/books"; // 如果是mysql5這樣寫String url = "jdbc:mysql://localhost:3306/books?serverTimezone=GMT%2B8&useOldAliasMetadataBehavior=true"; // 如果是mysql8這樣寫String username = "root";String password = "12345";創建Connection對象
Connection conn = DriverManager.getConnection(url, username, password);定義sql語句
//3. 定義sqlString sql1 = "update book set price = price - 8 where reclD = 1";String sql2 = "update book set price = price - 8 where reclD = 2";String sql3 = "update book set price = price - 8 where reclD = 3";調用creatStatement()方法
//4. 獲取執行sql的對象 StatementStatement stmt = conn.createStatement();Connection的理解
這就是Connection(數據庫連接對象) 的在代碼中的涉及部分,那么Connection到底是什么了,就跟它的名字一樣,數據庫連接對象,從面相對象的角度理解,這個對象就是封裝了去連接整個數據庫信息的用戶的各種信息,比如url,password,username,這些信息,把這些信息封裝打包,成為一個Connection(數據庫連接對象),然后就可以通過這個封裝好的對象去進行一系列操作了。
其他信息
Connection(數據庫連接對象)作用:
- 獲取執行 SQL 的對象
- 管理事務
總結
以上是生活随笔為你收集整理的Connection(数据库连接对象)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 绘本“深阅读’’的教学探索
- 下一篇: 讯飞语点,移动灵犀,搜狗语音助手对比测试