上一节我们介绍了H2database是什么以及简单的应用,本文将进一步深入,将H2应用到以Maven管理的项目中。
一、引入Maven依赖
在maven中定义H2数据库的版本属性
<properties>
<h2.version>1.3.172</h2.version>
</properties>
添加H2依赖
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>${h2.version}</version>
<scope>test</scope>
</dependency>
二、运行方式
1、在内存中运行
数据库只在内存中运行,关闭连接后数据库将被清空,适合测试环境
连接字符串:
jdbc:h2:mem:DBName;DB_CLOSE_DELAY=-1
如果不指定DBName,则以私有方式启动,只允许一个连接
2、嵌入式
数据库持久化存储为单个文件
连接字符串:
jdbc:h2:file:~/.h2/DBName;AUTO_SERVER=TRUE
~/.h2/DBName表示数据库文件的存储位置,如果第一次连接则会自动创建数据库
3、服务模式
H2支持三种服务模式:
web server:此种运行方式支持使用浏览器访问H2 Console
TCP server:支持客户端/服务器端的连接方式
PG server:支持PostgreSQL客户端
启动tcp服务连接字符串示例:
jdbc:h2:tcp://localhost/~/test 使用用户主目录
jdbc:h2:tcp://localhost//data/test 使用绝对路径
4、连接字符串参数
DB_CLOSE_DELAY:要求最后一个正在连接的连接断开后,不要关闭数据库
MODE=MySQL:兼容模式,H2兼容多种数据库,该值可以为:DB2、Derby、HSQLDB、MSSQLServer、MySQL、Oracle、PostgreSQL
AUTO_RECONNECT=TRUE:连接丢失后自动重新连接
AUTO_SERVER=TRUE:启动自动混合模式,允许开启多个连接,该参数不支持在内存中运行模式
TRACE_LEVEL_SYSTEM_OUT、TRACE_LEVEL_FILE&