国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JSP > 正文

JBuilder2005實(shí)戰(zhàn)JSP之創(chuàng)建數(shù)據(jù)庫(kù)表(8)

2019-11-18 19:19:03
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  1.在Oracle的SQL Plus工具中,以具有DBA權(quán)限的用戶登錄數(shù)據(jù)庫(kù)

  system/manger@to_128

  @后的to_128為數(shù)據(jù)庫(kù)的連接串名,需要根據(jù)具體情況更改,如果數(shù)據(jù)庫(kù)是在本地,則可以省略@和連接串。

  2.創(chuàng)建jbuser用戶,指定密碼為abc。

  SQL> create user jbuser identified by abc;

  3.為jbuser用戶分配connect和resource角色權(quán)限。

  SQL> grant connect ,resource to jbuser;

  4.用jbuser登錄數(shù)據(jù)庫(kù)

  SQL> connect jbuser/abc@to_128;

  5.創(chuàng)建用戶表和序列,在SQL> 命令中運(yùn)行下面的sql代碼。

  代碼清單 1 創(chuàng)建表和序列的代碼

1. --創(chuàng)建用戶表
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. --創(chuàng)建登錄日志表
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. --創(chuàng)建索引,用于生成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>命令中運(yùn)行下面的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;

  創(chuàng)建工程及Web模塊

  在創(chuàng)建數(shù)據(jù)庫(kù)后,打開JBuilder,創(chuàng)建工程和Web模塊。

  1.File->New Project...創(chuàng)建一個(gè)名為bookstore的工程。

  2.File->New...->Web->雙擊Web Module(WAR)圖標(biāo)創(chuàng)建一個(gè)Web模塊,名稱取為webModule。選用Tomcat 5.0作為Web應(yīng)用服務(wù)器。

  編寫獲取數(shù)據(jù)庫(kù)連接類

  必須通過(guò)數(shù)據(jù)連接才可以訪問(wèn)數(shù)據(jù)庫(kù),在模塊的多個(gè)地方都需要獲取數(shù)據(jù)庫(kù)連接,所以我們編寫一個(gè)獲取數(shù)據(jù)連接的類,以增強(qiáng)代碼的復(fù)用率。

  在編寫獲取數(shù)據(jù)連接的類時(shí),必須先將Oracle的JDBC驅(qū)動(dòng)器類包c(diǎn)lasses12.jar加入工程擴(kuò)展類庫(kù)中(classes12.jar位于<oracle安裝目錄>/ jdbc/lib的目錄下),我們將classes12.jar放在<工程目錄>/oraJdbcLib下。通過(guò)以下的步驟在工程擴(kuò)展類庫(kù)中引入classes12.jar:
Project->Properties...->Paths設(shè)置頁(yè)->切換到Required Libraries->點(diǎn)擊Add...->在彈出的Add to Project Classpath對(duì)話框中切換到Archives標(biāo)簽頁(yè),選擇工程目錄下的<工程目錄>/oraJdbcLib /classes12.jar。

  將Oracle的JDBC驅(qū)動(dòng)器類包c(diǎn)lasses12.jar引入工程擴(kuò)展類庫(kù)后,在工程中創(chuàng)建DBConnection類,其代碼如下所示:

  代碼清單 3 DBConnection.java

1. package bookstore;
2.
3. import java.sql.*;
4. import java.util.Properties;
5.
6. public class DBConnection {
7.  //獲取數(shù)據(jù)庫(kù)連接類
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. }

  該類僅提供了一個(gè)靜態(tài)方法getConnection(),用jbuser/abc獲取位于192.168.0.128,SID為ora9i的數(shù)據(jù)連接。

  獲取數(shù)據(jù)庫(kù)連接有兩個(gè)關(guān)鍵點(diǎn):

  1、指定數(shù)據(jù)庫(kù)驅(qū)動(dòng)器類

  如第10行代碼所示,Oracle的JDBC驅(qū)動(dòng)器類名是:oracle.jdbc.driver.OracleDriver,不同數(shù)據(jù)庫(kù)有自己的JDBC數(shù)據(jù)庫(kù)驅(qū)動(dòng)器,如果你使用其它數(shù)據(jù)庫(kù),請(qǐng)自行查閱相關(guān)的資料。

  2、指定數(shù)據(jù)庫(kù)的URL連接串

  在第19行中,我們指定了一個(gè)數(shù)據(jù)庫(kù)URL連接串,不同數(shù)據(jù)庫(kù)的URL連接串格式也不一樣,對(duì)于Oracle數(shù)據(jù)庫(kù)來(lái)說(shuō),數(shù)據(jù)庫(kù)URL連接串包含4個(gè)部分:

  ·jdbc:oracle:thin :指定JDBC驅(qū)動(dòng)器的類型,這里指定用瘦客戶端驅(qū)動(dòng)器,無(wú)需在連接客戶端安裝其他的組件,最為常用。

  ·@192.168.0.128 :數(shù)據(jù)庫(kù)所在機(jī)器的ip,也可以用機(jī)器名。

  ·1521 :數(shù)據(jù)庫(kù)監(jiān)聽器所在的端口,一般情況下Oracle默認(rèn)在1521端口。

  ·ora9i :數(shù)據(jù)庫(kù)SID名稱。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宜君县| 保德县| 玉林市| 开阳县| 论坛| 恭城| 马山县| 平阳县| 墨江| 安岳县| 乐昌市| 武陟县| 公主岭市| 白河县| 津南区| 桃江县| 大荔县| 岱山县| 南郑县| 洪江市| 宜章县| 兴城市| 日喀则市| 台湾省| 韶山市| 焉耆| 红安县| 黑龙江省| 无棣县| 洞口县| 峨眉山市| 屯留县| 土默特右旗| 明水县| 赞皇县| 宜春市| 聂荣县| 漠河县| 获嘉县| 紫金县| 财经|