国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

JDBC 3.0 RowSet, 類似于windows中ADO的編程方式

2019-11-18 11:34:36
字體:
來源:轉載
供稿:網友

     JDBC有夠慢的,出到了3.0了才有個Rowset能類似于windows下ADO的概念,卻還是達不到ADO.net的水平。幸虧java里ORM這塊比較爭氣,趁著C#的ObjectSpace跳票,可以繼續耀武揚威。

     Rowset對比于ResultSet,除了不用保持Connecton外,更重要特點是能夠類似于ADO的編程方式,直接對Row賦值來進行Insert與Update, 而不用寫SQL語句。   在windows編程中經常可見這種模式,非凡是ADO.net用的好時,ORM也只能算是錦上添花....

     在Oracle的sample代碼中,rowset02.java完整demo了RowSet的ADO模式。
     簡化后的代碼如下:


public class RowSet02 {
  public static void main (String []args)
  {
   try
    {
      OracleCachedRowSet crowset = new OracleCachedRowSet ();
    
      crowset.setUrl (java:oracle:oci8:@);
      crowset.setUsername ("hr");
      crowset.setPassWord ("hr");
    
      /*Select*/
      crowset.setCommand ("SELECT seatno, tdate, name, class FROM reservation");
      crowset.execute ();

      System.out.PRintln ("Seat no  Travel Date  Name   Class");
      while (crowset.next ())
      {
        printRow (crowset);
      }

      crowset.setReadOnly (false);

      /*Update*/
      crowset.beforeFirst ();
      if (crowset.absolute (2))
      {
        crowset.updateString (4, "Business");
        crowset.updateRow ();
      }

      /*Insert*/    
      crowset.beforeFirst ();
      crowset.moveToInsertRow ();
      crowset.updateInt (1, 107);
      crowset.updateDate (2, new Date (975915381774L));
      crowset.updateString (3, "Pluto");
      crowset.insertRow ();
   
      /*Delete*/
      crowset.beforeFirst ();
      if (crowset.absolute (6))
      {
        crowset.deleteRow ();
      }

     
      crowset.acceptChanges ();
      crowset.close ();

     
    }catch (SQLException ea)
    {
      ea.printStackTrace ();
    }
  }

 
}



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长岛县| 囊谦县| 阳信县| 石棉县| 深圳市| 正定县| 武平县| 错那县| 龙口市| 博客| 辽阳县| 汉源县| 定远县| 札达县| 观塘区| 双桥区| 庄浪县| 安丘市| 江永县| 济宁市| 阿鲁科尔沁旗| 突泉县| 扶绥县| 肇庆市| 黄冈市| 双桥区| 合水县| 县级市| 保山市| 永康市| 孟连| 响水县| 宽甸| 略阳县| 长治县| 平和县| 深水埗区| 桦南县| 汕尾市| 泸水县| 平阳县|