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

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

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

    數據加載中……
    derby 例子(轉載)
    2008年4月10日  edited by dingdangxiaoma
    轉載別人的寫的例子:
    http://blog.csdn.net/Chinajash/archive/2007/01/08/1477568.aspx

    Derby并不是一個新的數據庫產品,它是由IBM捐獻給Apache的DB項目的一個純Java數據庫,JDK6.0里面帶的這個Derby的版 本是10.2.1.7,支持存儲過程和觸發器;有兩種運行模式,一種是作為嵌入式數據庫,另一種是作為網絡數據庫,前者的數據庫服務器和客戶端都在同一個 JVM里面運行,后者允許數據庫服務器端和客戶端不在同一個JVM里面,而且允許這兩者在不同的物理機器上.值得注意的是JDK6里面的這個Derby支 持JDK6的新特性JDBC 4.0規范(JSR 221),現在我們如果要練習JDBC的用法,沒有必要單獨裝一個數據庫產品了,直接用Derby就行.安裝完JDK6.0后,Derby會被安裝到<JDK6_HOME>/db下面,在<JDK6_HOME>/db/demo/programs下面還有一些示例程序,演示了如何啟動,連接Derby數據庫以及JDBC API的使用.下面分兩種情況演示一下如何用代碼操作Derby數據庫,一種是嵌入式數據庫,一種是網絡數據庫.

    一.嵌入式數據庫

    package db;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;

    public class EmbeddedDerbyTester {
        public static void main(String[] args) {
            String driver = "org.apache.derby.jdbc.EmbeddedDriver";// 在derby.jar里面
            String dbName = "EmbeddedDB";
            String dbURL = "jdbc:derby:" + dbName + ";create=true";// create=true表示當數據庫不存在時就創建它
            try {
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(dbURL);// 啟動嵌入式數據庫
                Statement st = conn.createStatement();
            //    st.execute("create table foo (FOOID INT NOT NULL,FOONAME VARCHAR(30) NOT NULL)");// 創建foo表
                st.executeUpdate("insert into foo(FOOID,FOONAME) values (2,'chinajash2')");// 插入一條數據
                ResultSet rs = st.executeQuery("select * from foo");// 讀取剛插入的數據
                while (rs.next()) {
                    int id = rs.getInt(1);
                    String name = rs.getString(2);
                    System.out.println("id=" + id + ";name=" + name);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    二.網絡數據庫
    package db;

    import java.io.PrintWriter;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;

    import org.apache.derby.drda.NetworkServerControl;

    public class NetworkServerDerbyTester {
        public static void main(String[] args) {
            String driver = "org.apache.derby.jdbc.ClientDriver";// 在derbyclient.jar里面
            String dbName = "NetworkDB";
            String connectionURL = "jdbc:derby://localhost:1527/" + dbName
                    + ";create=true";
            try {
                /*
                 * 創建Derby網絡服務器,默認端口是1527,也可以通過運行
                 * <Derby_Home>"frameworks"NetworkServer"bin"startNetworkServer.bat
                 * 來創建并啟動Derby網絡服務器,如果是Unix,用startNetworkServer.ksh
                 */
                NetworkServerControl derbyServer = new NetworkServerControl();// NetworkServerControl類在derbynet.jar里面
                PrintWriter pw = new PrintWriter(System.out);// 用系統輸出作為Derby數據庫的輸出
                derbyServer.start(pw);// 啟動Derby服務器
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(connectionURL);
                // do something
                Statement st = conn.createStatement();
                //st.execute("create table foo (FOOID INT NOT NULL,FOONAME VARCHAR(30) NOT NULL)");// 創建foo表
                st.executeUpdate("insert into foo(FOOID,FOONAME) values (2,'chinajash2')");// 插入一條數據
                ResultSet rs = st.executeQuery("select * from foo");// 讀取剛插入的數據
                while (rs.next()) {
                    int id = rs.getInt(1);
                    String name = rs.getString(2);
                    System.out.println("id=" + id + ";name=" + name);
                }
                derbyServer.shutdown();// 關閉Derby服務器
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }
    例子都是一樣子的,稍有改動。

    posted on 2008-04-10 15:48 叮當小馬 閱讀(564) 評論(1)  編輯  收藏 所屬分類: DataBase

    評論

    # re: derby 例子(轉載) 2008-04-10 15:54 叮當小馬

    運行上面的兩個例子,都會在根目錄下產生兩個文件夾,那兩個文件夾就是所生成的數據庫,我用的工具是myeclipse 會在workspace 工程目錄下產生這兩個數據庫文件夾。
      回復  更多評論    

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


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 午夜不卡久久精品无码免费 | 久久免费视频观看| 全部免费国产潢色一级| 亚洲大尺度无码无码专线一区| 91成人免费观看网站| 激情综合亚洲色婷婷五月| 99久久这里只精品国产免费| 亚洲videosbestsex日本| 成年人免费视频观看| 亚洲av纯肉无码精品动漫| 四虎成人精品在永久免费| 日韩一区二区三区免费播放| 亚洲成年看片在线观看| 九九热久久免费视频| 亚洲AV成人片色在线观看| 99热这里只有精品6免费| 亚洲成a人片在线观| 午夜视频在线观看免费完整版| 亚洲s码欧洲m码吹潮| 亚洲综合另类小说色区色噜噜| 中文字幕乱码一区二区免费| 亚洲综合久久综合激情久久| 亚洲综合免费视频| 久久无码av亚洲精品色午夜 | 亚洲国产精品无码成人片久久| 久久99国产乱子伦精品免费| 久久精品国产亚洲αv忘忧草| 国产免费观看a大片的网站| 黄床大片免费30分钟国产精品| 亚洲电影一区二区三区| 免费的涩涩视频在线播放| 日日狠狠久久偷偷色综合免费| 亚洲bt加勒比一区二区| 最近最好的中文字幕2019免费| 亚洲天堂免费在线视频| 亚洲中文字幕无码av在线| 亚洲国产精品人人做人人爱| 8888四色奇米在线观看免费看| 色偷偷噜噜噜亚洲男人| 亚洲av不卡一区二区三区| 成人永久免费福利视频网站|