jdbc學習總結

jdbc學習總結:
 
1、簡介:
  jdbc,直譯爲java鏈接數據庫。實際爲java爲很好的操做數據庫而提供的一套接口,接口的實現(即驅動)由各個數據庫廠商提供。
 
2、知識要點:
  鏈接5要素,3個知識點
 
3、知識圖譜:
  3.1.鏈接執行一條龍:
    註冊——>鏈接——>獲取session會話——>執行SQL——>返回結果集
  3.2.小知識:
      1.s p比較3方向:安全、效率、預編譯
      2.批處理:添加、執行、清空
      3.自增加:
 
4、詳情:
4.1.鏈接操做:
  //註冊驅動
    Class.forName("Driver.class");
  //獲取鏈接
    Connection conn = DriverManager.getConnection(url,username,password);
  //獲取session會話:
    Statement stmt = conn.createStatement();
  //執行更新語句
    stmt.executeUpdate(sql);
  //執行查詢操做,返回結果集
    ResultSet rs = stmt.executeQuery(sql);
  //獲取預編譯會話
    PreparedStatement pstmt = conn.preparedStatement(sql)
    pstmt.executeUpdate();
    pstmt.executeQuery();
 
4.2 3個知識點:
 
  1.sp比較: PrepareStatement 執行預編譯sql,
    安全性:防注入;
    效率高:oracle會用緩衝池
    會執行預編譯
 
  2.批量:
    //加入批量
      pstmt.addBatch();
    //執行批量(等所有sql加入批量,再執行批量)
      pstmt.addBatch();
    //清空批量
      pstmt.clearBatch();
 
  3.自增加不會用,仍是擱這吧:(估計是因爲本身執行的那個表沒有加序列的緣由)
    //獲取執行自增sql的預編譯會話
      pstmt = conn.prepareStatement(sql,PreparedStatement.RETURN_GENERATED_KEYS);
    //執行sql
      pstmt.executeUpdate();
    // 獲取執行自增sql後的自增加列
      ResultSet rs = pstmt.getGeneratedKeys();
    //獲取自增加值:
      while(rs.next){
        rs.getInt(1);
      }
 
5、零散總結
 
  1.導驅動包時,注意與數據庫版本一致;
  2.這裏沒有涉及sql調優,之後再學;
  3.沒有涉及鏈接池操做,之後在學;
  4.事務管理:conn.setAutoCommit(boolean);
相關文章
相關標籤/搜索