看到很多开源的项目把数据库绑定到项目中,直接发布就可以运行,不需要额外去配置数据库,下面准备用 Hsqldb 做一个类似的。我使用的框架是 struts2+Ibatis+spring, 其实基本的原理都是一样的
1. 准备一张表,脚本如下:
--用户表
DROP TABLE IF EXISTS USER
create table "USER"
(
"ID" INTEGER primary key,
"NAME" VARCHAR(30),
"PWD" VARCHAR(30),
"ADDRESS" VARCHAR(1000),
"SEX" INTEGER
)
insert into user values(1,'xiaobai','xiaobai','AAAAAA',1)
2. 在项目的 SRC 目录下建立 mydb.properties 和 mydb.script 两个文件, mydb.properties 是 Hsqldb 的是属性文件, mydb.script 放的建立的数据库脚本文件 ,mydb 是数据库名称。
3. 把 hsqldb.jar 放到 web-inf/lib 目录
4. 下面我们就可以创建数据库了, Hsqldb 提供了图形界面工具,其实在 myeclipse 也可链接的,很简单的配置如下:(附件)
用户名 sa 密码为空 ,Test Driver 通过就可以了。 执行上面的脚本,执行完之后一定执行 shutdown 命令,这样脚本和数据会被保存到 mydb.script 中。
怎样在程序启动的时候就启动 Hsqldb 数据库呢, Spring 配置如下:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:hsqldb:res:/mydb" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>