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

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

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

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

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

    一.嵌入式數(shù)據(jù)庫

    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表示當數(shù)據(jù)庫不存在時就創(chuàng)建它
            try {
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(dbURL);// 啟動嵌入式數(shù)據(jù)庫
                Statement st = conn.createStatement();
            //    st.execute("create table foo (FOOID INT NOT NULL,FOONAME VARCHAR(30) NOT NULL)");// 創(chuàng)建foo表
                st.executeUpdate("insert into foo(FOOID,FOONAME) values (2,'chinajash2')");// 插入一條數(shù)據(jù)
                ResultSet rs = st.executeQuery("select * from foo");// 讀取剛插入的數(shù)據(jù)
                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();
            }
        }
    }
    二.網(wǎng)絡數(shù)據(jù)庫
    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 {
                /*
                 * 創(chuàng)建Derby網(wǎng)絡服務器,默認端口是1527,也可以通過運行
                 * <Derby_Home>"frameworks"NetworkServer"bin"startNetworkServer.bat
                 * 來創(chuàng)建并啟動Derby網(wǎng)絡服務器,如果是Unix,用startNetworkServer.ksh
                 */
                NetworkServerControl derbyServer = new NetworkServerControl();// NetworkServerControl類在derbynet.jar里面
                PrintWriter pw = new PrintWriter(System.out);// 用系統(tǒng)輸出作為Derby數(shù)據(jù)庫的輸出
                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)");// 創(chuàng)建foo表
                st.executeUpdate("insert into foo(FOOID,FOONAME) values (2,'chinajash2')");// 插入一條數(shù)據(jù)
                ResultSet rs = st.executeQuery("select * from foo");// 讀取剛插入的數(shù)據(jù)
                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 叮當小馬 閱讀(573) 評論(1)  編輯  收藏 所屬分類: DataBase

    評論

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

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

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


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 学生妹亚洲一区二区| 免费一级毛suv好看的国产网站| 青青久在线视频免费观看| 国产精品亚洲一区二区三区| 红杏亚洲影院一区二区三区| 国产在线jyzzjyzz免费麻豆| 久久精品国产亚洲AV电影网| 亚洲AV永久无码精品成人| 中国在线观看免费国语版| 人妻无码中文字幕免费视频蜜桃| 日韩精品亚洲人成在线观看| 日韩一级免费视频| 99re在线视频免费观看| 亚洲av成人一区二区三区观看在线 | 中文无码成人免费视频在线观看| 久久国产亚洲精品| 国产亚洲一区二区精品| 精品免费国产一区二区三区| 国产免费伦精品一区二区三区| 亚洲AV成人噜噜无码网站| 亚洲区小说区激情区图片区| 嫩草影院免费观看| 日韩免费高清大片在线| 无码 免费 国产在线观看91| 亚洲xxxxxx| 亚洲嫩草影院久久精品| 亚洲国产一成久久精品国产成人综合 | 四虎成人免费影院网址| 无码人妻一区二区三区免费看| 精品久久久久久亚洲综合网| 亚洲一本之道高清乱码| 亚洲av女电影网| 亚洲色偷拍区另类无码专区| 在线不卡免费视频| 国产妇乱子伦视频免费| 国产免费无码一区二区| 国产精品美女免费视频观看| 国产成人精品久久亚洲高清不卡 | 一级特级aaaa毛片免费观看| 亚洲精品人成网线在线播放va| 亚洲精品**中文毛片|