[98] 試試把 WTP Tour 改用 H2 資料庫

資管系大二下學期選修課程
授課教授:XO

版主: b80203, ghost3401, XO, maa, kelly19881227

分享到: Facebook

[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週六 3月 27, 2010 9:32 pm

要不要自己來探索一下 H2 資料庫。

(106/12/30: 電腦教室安裝的 Aejaks 裡頭也附有 h2,位於: C:\aejaks-2.3\h2 資料夾)

  1. 先找到 H2 網站
  2. 下載那鍋 Platform-Independent ZIP, 解壓縮到 C:\ (會安裝在 C:\h2 資料夾)
  3. ...
然後 DOS PromptC:\h2 資料夾,鍵入 h2 ...
(106/12/30: 使用 Aejaks 裡頭的 h2,則是要 DOS Prompt 到 C:\aejaks\h2 資料夾,鍵入 h2)

圖檔

Testing Connection 測試 成功後, 按 Connect 連入、鍵入如下兩郭 SQL 敘述,點選編輯區域上方的 Run 按鈕:

圖檔

之後... 試試 select 敘述調閱剛建好的資料表 (Table):

圖檔

H2 有個挺直覺便利 (有點兒像 Excel) 的資料輸入介面...

圖檔

嗯!進行當中.... 突然發覺去年已經有學長分享過,而且還寫得更詳盡...

同學要不要 搜 她 一 蒐 ? ^o^ 然後接續這個討論 ㄇㄟ...

___

BTW, 我小試了一下裝完 H2 之後,也把它加掛到咱們 Eclipse Data Source Explorer 視景 (View) 裡去,如下圖所示:

圖檔

DTP 裡,沒有現成給 H2 Driver Type 可選... 稍花了一下功夫、搔個頭皮就解決了... 同學不妨也可以試試...
(網路上看到一部「無聲電影」... 從那裡偷學來的 ...)

不透過 H2 界面 做如上操作的話,也可以透過咱們熟悉的 DTP 界面,做上述工作,只不過 Data Source 掛/連上 後,
記得要先「手動」做一道:

代碼: 選擇全部
CREATE SCHEMA WEB1;


把 WEB1 這個 SCHEMA 先建置起來,再下來的操作,不管是 SQL Scrapbook 或是 SQL Query Builder
Derby / JavaDB 資料庫都是一樣的!
最後由 XO 於 週四 12月 09, 2010 6:51 am 編輯,總共編輯了 7 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週二 3月 30, 2010 12:31 pm

XO 寫:嗯!進行當中.... 突然發覺去年已經有學長分享過,而且還寫得更詳盡...

同學要不要 搜 她 一 蒐 ? ^o^ 然後接續這個討論 ㄇㄟ...

居然... 這許久,西線無戰事!?
到底 了沒? 了沒?

好吧!當成 作業一2010/4/5 星期一午夜 12 點以前,在本站以 私人訊息 寄交到助教信箱。

  1. 主題: (學號) 的作業一
  2. 資料庫請以H2 資料庫 Embedded 方式,建在 C:\(學號)-db\test。(按:這會在 C:\(學號)-db 資料夾下,建立
    test.h2.db 檔案,在操作過程當中,同一資料夾下,會出現像 test.xxxx.db 這個樣式的工作檔,結束資料庫連線後,
    這些工作檔案會被關閉且刪除。test.trace.db 例外,它內部記載了對資料庫做了錯誤操作的追蹤紀錄。)
  3. 除了在該資料庫建置 Tour 裡的那三筆資料外,另外加上下面兩筆中文的吧(依序為: USERID, FULLNAME)...
    1. xo, 吳照輝
    2. (你的學號), (你的姓名)
  4. 建完資料庫,先 Disconnect 資料庫連線,再將 C:\(學號)-db 資料夾 壓縮成 (學號)-db.zip 做為繳交夾檔之ㄧ。
  5. 將我們仔細 把玩/Trace 過的 WTP Tour (Iteration#1 ~ 3) 程式加以修改,改成使用這個新建出來的 H2 資料庫。
  6. 將該寫好的這個 Project1 專案 export 出來,並將 export 出來的整個專案資料夾,壓縮成 (學號)-project1.zip
    作為繳交夾檔之二。
  7. 還沒完... 請依樣畫葫蘆做出如下畫面截圖,將該截圖夾檔以 (你的學號)-hw1-img.xxx 為名上傳外(xxx 依你截圖
    檔案不同,有可能是 .gif、.png、... etc),還需要在 私人訊息 裡呈現出來。截圖內容需涵蓋:
    1. 進入 Database Development Perspective
    2. 展開你為 H2 這個資料庫所做的 Connection Profile 到如圖所示 Tables > LOGIN > Columns 這一層。
    3. 開啟 SQL Scrapbook,做資料庫連線,鍵入 create schema ... 與 create table ... SQL 指令。
    4. 開啟 SQL Query Builder,如畫面操作順序,但是把 Conditions 裡的 Value 欄位換成 你的學號 囉!
    圖檔
  8. 此外本討論串樓上那一篇所提示有關版裡一篇 H2 資料庫舊文章,請搜出來... 在你繳交作業的私人訊息裡(就在上述夾圖的下方吧),
    建個 超連結 指到該篇討論。

贅上一句... 作業視同 Take home exam (考試ㄇㄟ),抄襲兩造一律作弊論處!

不可以 私下 討論或教導本作業有關的任何細節,有問題、或願意指導,都請到這個版上來 公開 為之!

這個作業驗收你如下功夫:
  1. 熟悉 WTP Tour 整個用上了資料庫、Form、JSP、Servlet、JDBC... MVC 架構的 Web Application 開發過程。
  2. PHPBB 論壇裡,爬文、參予討論的如下基本技巧:
    1. 上傳圖片,以文繞圖方式,PO出易於理解、圖文並茂的文章
    2. 發送私人訊息
    3. 訊息裡加入 超連結
    4. 論壇裡用關鍵字搜尋文章
  3. 舉一反三,藉助 Derby 操作獲得的知識,安裝建置一個新取得資料庫的能力。


嗯!我還遺漏了些啥嗎?
最後由 XO 於 週二 4月 06, 2010 2:45 pm 編輯,總共編輯了 4 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週二 3月 30, 2010 4:40 pm

!!!
作業一出現了
還好我有天天上版看,不然就會錯過繳交日期了 8)

不過我上禮拜上課的都還沒複習完呢...
這會兒又有新東西了
看來要衝了!!!
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週二 3月 30, 2010 6:15 pm

剛剛照著去年學長的步驟做了h2
然後又到最後的關頭出現了......

圖檔

想請問一下老師這是因為我有什麼東西沒有建置好嗎?
跟老師上文提到的CREATE SCHEMA WEB1有關係嗎?
附加檔案
chh2q.jpg
(263.23 KiB) 被下載 1 次
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週二 3月 30, 2010 6:22 pm

chingzai 寫:!!!
作業一出現了
還好我有天天上版看,不然就會錯過繳交日期了 8)
...


呵呵~~~ 不用那麼辛苦啦!看到下面箭頭所指這個沒?

圖檔

知道什麼是 RSS 嗎?有幾篇可以參考看看:

  1. [精華] 推廣新增的 RSS 功能 - 本學園提供 RSS,可用工具來主動通知你新發表的文章。
  2. [資訊]MSN的RSS功能你們知道嗎? - 如果你整天掛在 MSN 上,透過 MSN 來通知,也可以!
  3. 不必另裝程式, 用IE 瀏覽器閱讀與訂閱RSS - IE 現在也內建支援這 RSS。
  4. Firefox 亦然!請參閱: 善用 Firefox 的 RSS 訂閱功能
最後由 XO 於 週三 3月 31, 2010 6:59 pm 編輯,總共編輯了 3 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週二 3月 30, 2010 6:44 pm

chingzai 寫:...
想請問一下老師這是因為我有什麼東西沒有建置好嗎?
跟老師上文提到的CREATE SCHEMA WEB1有關係嗎?


你說呢? ^o^
你點選反白那錯誤訊息 "org.h2.jdbc.JdbcSQLException: Schema "WEB1" not found; ..." 在說啥呀?
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週三 3月 31, 2010 12:06 am

老師我解決了!!
但不知道怎麼解決的XD
只是重新用了一遍這樣而已...

還有...我不會把h2掛載到Eclipse裡/.\
尋尋覓覓始終找不到老師所說的「無聲電影」.....
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週三 3月 31, 2010 12:48 am

chingzai 寫:還有...我不會把h2掛載到Eclipse裡/.\
尋尋覓覓始終找不到老師所說的「無聲電影」.....


Better yet, Googling again with keywords --> "h2 connection profile in eclipse"

I found the following article,...

AddH2ConnectionInJBossTools -
Explains how to register the H2 driver and add an H2 connection in JBoss Tools.

雖然說是針對 JBoss,一樣適用,關鍵是在 Connection Profile Types 底下,選 Generic JDBC 就對了!

至於那無聲影片,我是用 "h2 database DTP eclipse" 做關鍵字 Google 到的...

H2Database STS Eclipse DTP Video
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週三 3月 31, 2010 3:00 pm

XO 寫:
chingzai 寫:還有...我不會把h2掛載到Eclipse裡/.\
尋尋覓覓始終找不到老師所說的「無聲電影」.....


Better yet, Googling again with keywords --> "h2 connection profile in eclipse"

I found the following article,...

AddH2ConnectionInJBossTools -
Explains how to register the H2 driver and add an H2 connection in JBoss Tools.

雖然說是針對 JBoss,一樣適用,關鍵是在 Connection Profile Types 底下,選 Generic JDBC 就對了!

至於那無聲影片,我是用 "h2 database DTP eclipse" 做關鍵字 Google 到的...

H2Database STS Eclipse DTP Video


我都沒想到可以用這些關鍵字(英文太弱..) :shock:


XO 寫:....

不透過 H2 界面做如上操作的話,也可以透過咱們熟悉的 DTP 界面,做上述工作,只不過 Data Source 掛/連上 後,
記得要先「手動」做一道:

代碼: 選擇全部
CREATE SCHEMA WEB1;


把 WEB1 這個 SCHEMA 先建置起來,再下來的操作,不管是 SQL Scrapbook 或是 SQL Query Builder 和
Derby / JavaDB 資料庫都是一樣的!


老師,想請問要如何在建好H2資料庫底下create schema?
這跟我們先前步驟所create過的schema web1不會有所衝突?(還沒掛到 Eclipse 之前所建立的那些...)
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週三 3月 31, 2010 5:28 pm

chingzai 寫:老師,想請問要如何在建好H2資料庫底下create schema?
這跟我們先前步驟所create過的schema web1不會有所衝突?(還沒掛到 Eclipse 之前所建立的那些...)


不確定我是否意會了你問題的所在...

H2 Database 與 Derby 不太相同...

我們在Derby 資料庫裡, create table web1.login ... 時,可以一併建立一個叫做web1
schema (綱目),然後在這個「綱目」底下,建立一個叫做 login Table

但是在 H2 Database 裡,如果直接下 create table web1.login ... 指令的話,會被吐槽說
找不到 WEB1 這個綱目 ...

圖檔

所以要另外下 create schema web1 這個指令來建立 WEB1 這個綱目。

圖檔

建好之後,再來開 Table 就不會有問題了ㄇㄟ...

下 SQL 指令,在 H2 裡,就如同 Derby 開啟了 SQL Scrapbook 般,直接在輸入方塊鍵入指令,並
加以執行!

圖檔
最後由 XO 於 週二 4月 06, 2010 2:56 pm 編輯,總共編輯了 1 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週三 3月 31, 2010 5:49 pm

老師抱歉我的問題沒有問清楚!
如同老師回覆我的步驟那般,在 H2 console 的介面下已經 create 好了 web1

而當我想要把 H2 掛載到 Eclispe 之下的時候
我不知道該如何做出像老師前面截圖的 b.步驟 裡頭的 WEB1

圖檔


我只做到了以下步驟... 卻不知該如何在 schemas 裡,建立 WEB1
圖檔
附加檔案
chsch.jpg
(68.17 KiB) 尚未被下載
xopic.png
(29.82 KiB) 尚未被下載
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週三 3月 31, 2010 6:20 pm

Soga, 照說 在 H2 界面裡,建好的 WEB1 綱目,在 Eclipse 連線去開該資料庫,WEB1 就應該在該處
了,不需要再建一次!

看來你在 Data Sources Explorer Database Connections 上面 New 出來的 Connection Profile
是「另有所指」囉!

如果是這問題:一樣呀!你在開出來的 Derby 資料庫,當初是如何下 create table ... 指令的,H2 資
料庫
也是一樣的操作!只不過如前述,H2 裡,要先 create schema web1;

奇怪!其他同學怎麼都一點兒反應都沒有?今年這一班挺沉默的... 這年頭不流行「沉默是金」唷! ^o^

加油!
最後由 XO 於 週二 4月 06, 2010 3:01 pm 編輯,總共編輯了 1 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週三 3月 31, 2010 7:05 pm

chingzai 寫:我都沒想到可以用這些關鍵字(英文太弱..) :shock:


英文 作為無國界 的 世界語言,早一天 Master your English 就可以越早擁有競爭優勢。
Never too late to learn...

加油!
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週三 3月 31, 2010 7:36 pm

真是一語點醒夢中人!!!
這下終於給我做出跟老師截圖一樣的畫面了(真開心 :D )

XO 寫:奇怪!其他同學怎麼都一點兒反應都沒有?今年這一班挺沉默的... 這年頭不流行「沉默是金」唷! ^o^

加油!


大家真的都好安靜...這樣顯得我好吵 :oops:

對了再請問老師一下,
是不是做到老師上面的 a., b., c. & d. 的那張圖之後,按 OK

會多出
代碼: 選擇全部
FROM WEB1.LOGIN
  WHERE USERID = '自己的學號'


之後...再將這個 SQL 儲存之後,把 Project1 export 出來,就大功告成了? (要繳交的其中之一)
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週三 3月 31, 2010 7:47 pm

chingzai 寫:對了再請問老師一下,
是不是做到老師上面的 a., b., c. & d. 的那張圖之後,按 OK

會多出
代碼: 選擇全部
FROM WEB1.LOGIN
  WHERE USERID = '自己的學號'


之後... 再將這個 SQL 儲存之後,把 Project1 export 出來,就大功告成了? (要繳交的其中之一)


你說呢? ^o^
回頭再把題目仔細看一遍!
最後由 XO 於 週二 4月 06, 2010 3:03 pm 編輯,總共編輯了 2 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週三 3月 31, 2010 8:31 pm

這個...那個..難道是...
要改 Database.java 裡的....?
代碼: 選擇全部
Class.forName("org.h2.jdbc.JdbcSQLException");
connection = DriverManager.getConnection("jdbc:h2:C:/497742356-db/test");

是改成這樣嗎?(因為之前可以測試成功好像是因為用了org.h2.Driver)


XO 寫:將我們仔細 把玩/Trace 過的 WTP Tour (Iteration#1 ~ 3) 程式加以修改,改成使用這個新建出來的 H2 資料庫。

老師的意思是,把之前那些已經做好的步驟,稍加修改,將資料庫指向的地方由 derby 改成 h2 嗎?
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章XO » 週三 3月 31, 2010 9:15 pm

嗯!看了樓上PO文... 都還沒引出童鞋來「敦親睦鄰、守望相助」...
咱們這 「社區」 就顯得 「人情」 單薄 了些!

這... 也粉難相信童鞋宣稱 「有在潛水」...

小夥子們!你們說呢? :目 (現學現賣 ^o^)
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5473
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章chingzai » 週三 3月 31, 2010 9:24 pm

阿...被老師胃口了
我想大家可能只是慢點開始做而已吧!

這禮拜想回家好好過個春假,所以現在在趕工 /.\
沒做完... 一整個心就會懸在這
chingzai
懷疑的國中生
 
文章: 82
註冊時間: 週四 8月 14, 2008 11:35 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章jessie79517 » 週三 3月 31, 2010 11:05 pm

已經做了一些些,還有點模糊,未來應該會有許多問題請教大家
等等我! :roll:
jessie79517
懷疑的國中生
 
文章: 58
註冊時間: 週四 8月 21, 2008 4:48 pm

Re:[98] 試試把 WTP Tour 改用 H2 資料庫

文章jessie79517 » 週四 4月 01, 2010 12:11 am

我按照AddH2ConnectionInJBossTools 來建置資料庫,最後出現不能成功連到 H2

圖檔

想問問是不是出了以下什麼問題

圖檔

圖檔



還有

圖檔
附加檔案
4.JPG
(78.55 KiB) 尚未被下載
3.JPG
(161.35 KiB) 尚未被下載
2.JPG
(50.42 KiB) 尚未被下載
1.JPG
(46.96 KiB) 尚未被下載
jessie79517
懷疑的國中生
 
文章: 58
註冊時間: 週四 8月 21, 2008 4:48 pm

下一頁

回到 Web程式設計

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 3 位訪客