<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    BlogJava 聯系 聚合 管理  

    Blog Stats

    隨筆檔案

    exams


    java世界

    世界Java

     1.java數據庫操作基本流程
    a .數據庫連接1.Drivermanager 鏈接數據庫
    String className,url,uid,pwd;
    className="oracle.jdbc.driver.OracleDriver";
    uid="scott";
    pwd="tiger";
    url="jdbc:oracle:thin:@localhost:1521:ora92";
    Class.forName(classname);
    Connection conn=DriverManager.getConnection(url,uid,pwd);
    2.JNDI鏈接數據庫
    String jndi ="jdbc/db"; //  e20-040 9L0-609 數據源的名稱
    //context是一組名稱到對象的綁定組成
    Hashtable env=new Hashtable ();
    Context ctx=(Context)new InitialContext.lookup("env");// 獲得數據源所在的上下文點的對象
    DataSource ds=(DataSource)ctx.lookup(jndi);//找到數據源

    Connection conn=ds.getConnection();//
    b.執行 sql語句
    String sql;
    StateMent stat=conn.createStatement();
    ResultSet rs=stat.executeQuery(sql);//執行數據的查詢語句(select);
    stat.executeUpdate(sql);//執行數據的更新語句(inset into ,delete ,update ,drop)
    stat.close();
    c.用preparedStatement 來執行sql語句
    String sql="inset into table(id,name) values(?,?)";
    PreparedStatement ps=conn.prepareStatement(sql);
    ps.setInt(1,001);
    ps.setString(2,"zhangmanli");


     

    ps.executeQuery();
    int count=ps.executeUpdate();
    d.處理執行結果
    查詢語句,返回記錄集ResultSet對象
    更新語句,返回數字,表示該更新影響的記錄數
    javax.sql.*
    javax.naming.*;
    數據處理:
    1關閉connection 的自動提交
    conn.setAutoCommit(false);
    2執行一系列sql 語句,
    Statement sm;
    sm=conn.createStatement(sql);
    sm.executeUpdate();
    sm.close();


     

    3.提交:
    conn.commit();
    4.回滾機制;
    conn.rollback();
    e:線程處理:
    D:jndi和dataSource 來獲得數據庫的鏈接:
    import java.sql.ResultSet ;
    import java.sql.*;
    import javax.sql.DataSource;
    import javax.naming.Context;
    import javax.naming.InitialContext;


     

    import java.util.Hashtable;
    import java.util.Properties;
    import java.io.*;
    public class BasicExample{


     

    {
     public static void main(String args[]){
      Connection conn=null;
      try{
       Properties prop =new Properties();
       prop.load(new FileInputStream("simple.properties"));


     


       Hashtable env =new Hashtable();
       env.put(Context.INITIAL_CONTEXT_FACTORY,prop.getProperty("INITIAL_CONTEXT_FACTORY"));
       env.put(Context.PROVIDER_URL,prop.getProperty("PROVIDER_URL"));
       InitialContext ctx=new InitialContext(env);


     

       DataSource ds=(DataSource)ctx.lookup("Book");
       Conn=ds.getConnection();
       Statement stat=conn.createStatement();;
       ResultSet rs=stmt.executeQuery(sql);
       while(rs.next()){
        int id=Integer.parseInt(rs.getString("userId"));
        String userName=rs.getString ("username");
       }
      }catch(SQLException e){
       e.printStackTrace();
      }finally{
       try{
        if(conn!=null){
         conn.close();
        }
       }catch(SQLException e){
        e.printStackTrace();
       }
      }
     }


     

    };

    posted on 2007-09-27 11:02 java2java 閱讀(720) 評論(3)  編輯  收藏

    評論

    # re: java數據庫操作基本流程 2007-09-27 11:29 千里冰封
    對于初學數據庫的人是挺有幫助的  回復  更多評論
      

    # re: java數據庫操作基本流程 2007-09-27 11:52 CoderDream
    很基礎的東西建議放到新手區!  回復  更多評論
      

    # re: java數據庫操作基本流程 2007-09-27 19:17 千里冰封
    呵呵,現在已經放到新手區了  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲欧洲日本在线观看| 亚洲精品国产福利在线观看| 日日摸日日碰夜夜爽亚洲| 台湾一级毛片永久免费| 亚洲一级黄色大片| 毛片基地免费观看| 在线免费观看伊人三级电影| 久久国内免费视频| 亚洲最新中文字幕| 欧洲一级毛片免费| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 美女被免费视频网站a| 国产成人免费全部网站 | 国产日韩AV免费无码一区二区三区| 亚洲&#228;v永久无码精品天堂久久 | 日韩亚洲翔田千里在线| 波多野结衣视频在线免费观看| 一级毛片a免费播放王色电影| 久久精品国产亚洲AV不卡| 玖玖在线免费视频| 久久亚洲精品无码aⅴ大香| 2021免费日韩视频网| 亚洲欧美国产欧美色欲| 亚洲精品视频在线观看你懂的| 免费无码一区二区三区蜜桃| 久久亚洲国产精品成人AV秋霞 | 日韩亚洲国产综合久久久| 免费一区二区三区在线视频| 亚洲午夜国产精品无码| 91福利免费视频| 男人的天堂av亚洲一区2区| 国产亚洲精久久久久久无码77777 国产亚洲精品成人AA片新蒲金 | 亚洲hairy多毛pics大全| 亚洲国产精品国产自在在线| 日本免费中文视频| 亚洲欧美日韩综合久久久久| 国产亚洲美日韩AV中文字幕无码成人| 久草免费福利视频| 亚洲人成电影网站色www| 激情97综合亚洲色婷婷五| 最近中文字幕电影大全免费版|