如果使用了hsqldb以外數據庫的,點擊添加一個寵物到購物車的時候,總會報錯,不同的數據庫不一樣,mysql是報“Column 'ITEMID' in field list is ambiguous”,oracle則報一堆有亂碼的錯誤,無奈只能用默認的hsqldb,它需要一個叫hsqldb.jar的東西,lib目錄下有,不過默認使用的是內存數據庫,即工程一關閉數據全消失,如果想保存住,需要用服務器模式,下面是相應的命令:
進到hsqldb.jar所在的目錄:
建立數據庫,必須起個別名,都叫jpetstore:
java -cp hsqldb.jar org.hsqldb.Server -database.0 db/jpetstore
啓動數據庫:以server模式
java -cp hsqldb.jar org.hsqldb.Server -database.0 db/jpetstore -dbname.0 jpetstore
jpetstore是數據庫名字
server模式的url及driver:
driver=org.hsqldb.jdbcDriver
url=jdbc:hsqldb:hsql://localhost/jpetstore
username=sa
password=
默認用戶名爲sa,密碼爲空,最好把啓動的語句寫個成bat文件,雙擊執行就行。
但另一個不爽的是,我用myeclipse8.0,在database視圖中點擊edit data看不到表的內容,顯然是個bug,想看你只能寫個查詢的sql,無奈花了1個多小時,寫了個程序來自動查詢:
原理很簡單,不解釋了。運行效果如下: