JBuilder2005實戰JSP之建立資料庫表

來源:互聯網
上載者:User
1.在Oracle的SQL Plus工具中,以具有DBA許可權的使用者登入資料庫。

  system/manger@to_128

  @後的to_128為資料庫的串連串名,需要根據具體情況更改,如果資料庫是在本地,則可以省略@和串連串。

  2.建立jbuser使用者,指定密碼為abc。

  SQL> create user jbuser identified by abc;

  3.為jbuser使用者指派connect和resource角色許可權。

  SQL> grant connect ,resource to jbuser;

  4.用jbuser登入資料庫

  SQL> connect jbuser/abc@to_128;

  5.建立使用者表和序列,在SQL> 命令中運行下面的sql代碼。

  代碼清單 1 建立表和序列的代碼

1. --建立使用者表
2. create table T_USER (
3. USER_ID CHAR(6) not null,
4. USER_NAME VARCHAR2(60),
5. PASSWORD VARCHAR2(20),
6. constraint PK_T_USER primary key (USER_ID)
7. );
8. --建立登入日誌表
9. create table T_LOGIN_LOG (
10. ID CHAR(12) not null,
11. USER_ID CHAR(6) not null,
12. DT_LOGIN CHAR(14) not null,
13. DT_LONOUT CHAR(14),
14. constraint PK_T_LOGIN_LOG primary key (ID)
15. );
16.
17. --建立索引,用於產生T_LOGIN_LOG表的主鍵
18. create sequence SEQ_LOGIN_LOG_ID
19. increment by 1
20. maxvalue 999999999999
21. minvalue 100000000000;
   6.在T_USER使用者表中插入3曆史人物作為初始使用者,在SQL>命令中運行下面的sql代碼。

  代碼清單 2 往T_USER表中插入3條記錄

1. insert into T_USER(USER_ID,USER_NAME,PASSWORD) values('100000','薑子牙','123456');
2. insert into T_USER(USER_ID,USER_NAME,PASSWORD) values('100001','鮑叔牙','123456');
3. insert into T_USER(USER_ID,USER_NAME,PASSWORD) values('100002','豎牙','123456');
4. commit;

   建立工程及Web模組

  在建立資料庫後,開啟JBuilder,建立工程和Web模組。

  1.File->New Project...建立一個名為bookstore的工程。

  2.File->New...->Web->雙擊Web Module(WAR)表徵圖建立一個Web模組,名稱取為webModule。選用Tomcat 5.0作為Web應用伺服器。

  編寫擷取資料庫連接類

  必須通過資料連線才可以訪問資料庫,在模組的多個地方都需要擷取資料庫連接,所以我們編寫一個擷取資料連線的類,以增強代碼的複用率。

  在編寫擷取資料連線的類時,必須先將Oracle的JDBC磁碟機類包classes12.jar加入工程擴充類庫中(classes12.jar位於<oracle安裝目錄>/ jdbc/lib的目錄下),我們將classes12.jar放在<工程目錄>/oraJdbcLib下。通過以下的步驟在工程擴充類庫中引入classes12.jar:
Project->Properties...->Paths設定頁->切換到Required Libraries->點擊Add...->在彈出的Add to Project Classpath對話方塊中切換到Archives標籤頁,選擇工程目錄下的<工程目錄>/oraJdbcLib /classes12.jar。

  將Oracle的JDBC磁碟機類包classes12.jar引入工程擴充類庫後,在工程中建立DBConnection類,其代碼如下所示:

  代碼清單 3 DBConnection.java

1. package bookstore;
2.
3. import java.sql.*;
4. import java.util.Properties;
5.
6. public class DBConnection {
7.  //擷取資料庫連接類
8.  public static Connection getConnection() throws SQLException {
9.  try {
10.   Class.forName("oracle.jdbc.driver.OracleDriver");
11.  } catch (ClassNotFoundException ex) {
12.   ex.printStackTrace();
13.   return null;
14.  }
15.  Properties sysProps = new Properties();
16.  sysProps.put("user", "jbuser");
17.  sysProps.put("password", "abc");
18.  return DriverManager.getConnection(
19.   "jdbc:oracle:thin:@192.168.0.128:1521:ora9i", sysProps);
20.  }
21. }

  該類僅提供了一個靜態方法getConnection(),用jbuser/abc擷取位於192.168.0.128,SID為ora9i的資料連線。

  擷取資料庫連接有兩個關鍵點:

  1、指定資料庫磁碟機類

  如第10行代碼所示,Oracle的JDBC磁碟機類名是:oracle.jdbc.driver.OracleDriver,不同資料庫有自己的JDBC資料庫磁碟機,如果你使用其它資料庫,請自行查閱相關的資料。

  2、指定資料庫的URL串連串

  在第19行中,我們指定了一個資料庫URL串連串,不同資料庫的URL串連串格式也不一樣,對於Oracle資料庫來說,資料庫URL串連串包含4個部分:

  ·jdbc:oracle:thin :指定JDBC磁碟機的類型,這裡指定用瘦用戶端磁碟機,無需在串連用戶端安裝其他的組件,最為常用。

  ·@192.168.0.128 :資料庫所在機器的IP,也可以用機器名。

  ·1521 :資料庫監聽器所在的連接埠,一般情況下Oracle預設在1521連接埠。

  ·ora9i :資料庫SID名稱。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.