JSP頁面中連接IBMCloudscape(derby)數(shù)據(jù)庫

字號:

derby數(shù)據(jù)庫與mysql不同的是,它有兩種連接方式:embbed 和 net server
    這里只用了第一種embbed的形式,第二種還沒有試過。
    系統(tǒng)運行環(huán)境:winxp+jdk1.4.2+tomcat+cloudscape10.0
    以下是具體的網(wǎng)頁代碼:
    
    derbyconnect.jsp
    
    <%@ page language="java" import="java.sql.*" import="java.util.Properties" %>
    <%
    String databaseURL ="jdbc:derby:C:\\Database\\jimmyDB"; //C:\\Database\\jimmyDB是數(shù)據(jù)庫的存放位置
    try{
     Class.forName("org.apache.derby.jdbc.EmbeddedDriver"); //derby數(shù)據(jù)庫的embbed驅(qū)動名
     out.println("Success loading derby Driver!");
     }
     catch(Exception e)
     {
     out.print("Error loading derby Driver!");
     e.printStackTrace();
     }
     try{
     Properties properties = new Properties();
     properties.put("create", "true");//新建數(shù)據(jù)庫
     properties.put("user", "APP");//用戶名
     properties.put("password", "APP"); //密碼
     properties.put("retreiveMessagesFromServerOnGetMessage", "true");
    //Get a connection
     Connection connect= DriverManager.getConnection(databaseURL, properties);
     out.print("Success connect derby server!");
     Statement s = connect.createStatement();
     s.execute("create table jimmyDB2(num int, addr varchar(40))");
     out.println("Created table jimmyDB2");
     s.execute("insert into jimmyDB2 values (1956,´Webster St.´)");
     out.println("Inserted 1956 Webster");
     s.execute("insert into jimmyDB2 values (1910,´Union St.´)");
     out.println("Inserted 1910 Union");
     s.execute("update jimmyDB2 set num=180, addr=´Grand Ave.´ where num=1956");
     out.println("Updated 1956 Webster to 180 Grand");
     s.execute("update jimmyDB2 set num=300, addr=´Lakeshore Ave.´ where num=180");
     out.println("Updated 180 Grand to 300 Lakeshore");
     ResultSet rs = s.executeQuery("SELECT num, addr FROM jimmyDB2 ORDER BY num");
     while(rs.next())
     {
     out.println(rs.getInt(1));
     out.println(rs.getString(2));
     }
     }
     catch(Exception e)
     {
     out.print(" error!");
     e.printStackTrace();
     }
    %>