如果使用了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个多小时,写了个程序来自动查询:

 

 

原理很简单,不解释了。运行效果如下: