-
add <property name="hibernate.hbm2ddl.auto" value="create-drop"/> to hibernate property this will re-create table when SessionFactory init, drop table when session factory close
-
add HSQLDB dependency into pom.xml
<dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>1.8.0.7</version>
<scope>test</scope>
</dependency>
- prepare meta data, and insert the meta data into MemDB, now I use @Before annotation from Junit, so I need to test if we need to insert the data indead, because the method annotated by @Before will be executed each time for test method
@Before
public void prepareData() throws ServiceException {
if($needPrePareData){
executeSqlFile("init_data.sql");
}
}
private void executeSqlFile(String fileName){
try{
File refFile = new File(ClassLoader.getSystemResource(fileName).toURI());
SqlFile sqlFile = new SqlFile(refFile,false,null);
sqlFile.execute(dataSource.getConnection(), true);
}catch(Exception e){
System.out.println("exception when prepare Data ");
e.printStackTrace();
}
}
- use HSQLDB releated property
db.dialect=org.hibernate.dialect.HSQLDialect
db.driver=org.hsqldb.jdbcDriver
db.url=jdbc:hsqldb:mem:DBName
db.username=sa
db.passwd=
- we can also use hibernate3-maven-plugin to generate ddl from JPA annotation
- http://mojo.codehaus.org/maven-hibernate3/hibernate3-maven-plugin/
- ref article here http://unmaintainable.wordpress.com/2008/04/12/hibernate3-schema-creation/
- pay more attention on the <implementation>jpaconfiguration</implementation>,
it indicate that the plugin will use jpa as default implemtation
<build>
<plugins>
<!-- other plugins ... -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>hbm2ddl</goal>
</goals>
</execution>
</executions>
<configuration>
<components>
<component>
<name>hbm2ddl</name>
<implementation>jpaconfiguration</implementation>
</component>
</components>
<componentProperties>
<persistenceunit>Default</persistenceunit>
<outputfilename>schema.ddl</outputfilename>
<drop>false</drop>
<create>true</create>
<export>false</export>
<format>true</format>
</componentProperties>
</configuration>
</plugin>
<plugins>
</build>
分享到:
相关推荐
通过JDBC,我们可以使用`jdbc:hsqldb:hsql://localhost:9002/test`连接到服务器。 - **In-Process (Standalone)模式**:在这种模式下,数据库与应用程序在同一进程中运行,访问速度最快。但是,它仅限于当前进程,...
NULL 博文链接:https://gavin2lee.iteye.com/blog/2052929
3. **配置**: 在运行HSQLDB时,可以通过配置文件(如`hsqldb.properties`)来定制数据库的设置,如数据文件路径、端口号等。 ### 使用HSQLDB 1. **创建数据库**: 通过SQL命令`CREATE DATABASE`可以在HSQLDB中创建...
HSQldb因其小巧、快速和易用的特点,在Java开发中尤其受到青睐,特别是对于那些需要在内存中或磁盘上存储数据的应用来说。 标题中的"hsqldb包"指的是HSQldb的软件包,通常包含HSQldb的核心库hsqldb.jar文件。这个...
总结来说,JBOSS+EJB3+MySQL的开发涉及到以下几个关键步骤: 1. 安装和配置JBOSS服务器,确保其能够正常运行。 2. 将MySQL JDBC驱动添加到JBOSS服务器的类路径。 3. 创建并配置`mysql-ds.xml`文件,定义数据源连接...
2. **SQL问题**:探讨了HSQLDB对SQL标准的支持程度,包括对各种SQL语句(如SELECT、UPDATE等)的解释和示例,以及如何使用HSQLDB来管理数据完整性约束。 3. **UNIX下快速起步**:提供了一套适用于UNIX系统的快速入门...
3. **In-Memory模式**:数据存储在内存中,不持久化到磁盘,关闭连接后数据丢失。JDBC连接示例: ```java Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:aname", "sa", ""); ``` **HSQldb管理...
使用JDBC(Java Database Connectivity)可以连接到HSQLDB。以下是一个简单的示例: ```java Class.forName("org.hsqldb.jdbcDriver"); Connection conn = DriverManager.getConnection("jdbc:hsqldb:hsql://...
在使用HSQldb时,你需要按照官方文档的指示进行安装和配置,然后通过JDBC驱动连接到数据库,使用SQL语句进行数据操作。同时,了解如何配置数据库参数、管理用户权限以及进行数据库的备份和恢复,都是使用HSQldb时不...
在使用HSQldb-2.2.8时,开发者通常会通过下载解压后的文件,找到对应的JDBC驱动(通常为`hsqldb.jar`),将其添加到项目的类路径中,然后通过JDBC API连接到数据库。HSQldb的配置文件(如`hsqldb.properties`)可以...
在压缩包`hsqldb-2.2.5`中,包含HSQldb 2.25的所有相关文件,包括jar包和其他资源文件,这些文件可以直接集成到使用JDK 1.5的Java项目中,以实现数据库的连接和操作。 总的来说,HSQldb 2.25是一款专为JDK 1.5设计...
总的来说,HSQldb-lib.zip这个压缩包为HSQldb的开发者和使用者提供了更广泛的兼容性和功能性,使得HSQldb能够更好地适应各种复杂的开发场景。理解这些额外库的作用和用法,将有助于我们更有效地利用HSQldb进行数据库...
2. **连接数据库**:使用JDBC驱动进行连接,如`jdbc:hsqldb:hsql://localhost/test`,其中`test`是数据库名。 3. **创建表**:通过SQL语句`CREATE TABLE`定义表结构,如`CREATE TABLE Users (id INT PRIMARY KEY, ...
描述中提到的"TestByJDBC设置参数",是指使用Java的JDBC(Java Database Connectivity)接口来与HSQLDB交互。JDBC是Java标准API,允许Java程序连接和操作各种类型的数据库。在HSQLDB中,我们需要导入对应的JDBC驱动...
**HSQLDB简介** HSQLDB(HyperSQL Database)是一个开源、轻量级、高性能的关系型数据库管理系统,广泛应用于测试、开发以及嵌入式环境。它支持标准的SQL语法,并且提供了多种数据库引擎模式,包括内存模式、文件...
1. **嵌入式应用**:由于HSQLDB的轻量级特性,常被用于嵌入到Java应用程序中,作为内置数据库,如桌面软件、移动应用等。 2. **开发测试**:在软件开发过程中,HSQLDB作为测试数据库,可以快速搭建测试环境,模拟...
总的来说,"hsqldb demo"提供了一个实践HSQldb 功能的起点,让开发者能够更好地理解和运用这个轻量级的数据库系统。通过深入研究这个示例,你可以掌握HSQldb 的基本操作和特性,为你的项目开发带来便利。