参考:
H2数据库使用与管理入门 https://blog.csdn.net/fanpeizhong/article/details/73543260
H2 Database使用教程 https://blog.csdn.net/RYAN0UP/article/details/80790836
H2 Database入门 https://www.cnblogs.com/yjmyzz/p/H2-database-tutorial.html
1H2数据库简介
H2是一个用Java开发的嵌入式数据库,只有一个jar文件,它本身只是一个类库,不仅能以server模式运行,甚至能直接嵌入到应用项目中,因此它的作用有:
- 应用程序打包在一起发布,可以非常方便地存储少量结构化数据。
- 正因为它的嵌入式特性,还可以用于单元测试,从而可以不用为了单元测试而去Mcok数据库返回值,而直接使用真实的数据库。在用于单元测试中,H2还可以关闭持久化功能,每一个用例执行完随即还原到初始状态。
- 作为缓存,作为NoSQL的一个补充。当某些场景下数据模型必须为关系型,可以拿它当Memcached使,作为后端MySQL/Oracle的一个缓冲层,缓存一些不经常变化但需要频繁访问的数据,比如字典表、权限表。
- 作为真正的数据库使用,有服务器模式、嵌入/集成模式、混合模式
2下载和安装
官网下载,windows可执行文件安装版本和全平台通用版本,通用版解压后的文件结构是:
h2
|—bin
| |—h2-1.1.116.jar //H2数据库的jar包(驱动也在里面)
| |—h2.bat //Windows控制台启动脚本
| |—h2.sh //Linux控制台启动脚本
| |—h2w.bat //Windows控制台启动脚本(不带黑屏窗口)
|—docs //H2数据库的帮助文档(内有H2数据库的使用手册)
|—service //通过wrapper包装成服务。
|—src //H2数据库的源代码
|—build.bat //windows构建脚本
|—build.sh //linux构建脚本
所有平台,都是通过脚本启动。
运行模式:
- 内存模式:运行时的数据只保存在内存中,不回写到文件中
- 内嵌模式:和工程一起打包。可以作为缓存,作为NoSQL的一个补充。当某些场景下数据模型必须为关系型,可以拿它当Memcach