使用H2数据库1.3.169测试java应用程序我正在以两种不同的方式测试我的应用程序.内存数据库是在与应用程序不同的进程中创建的.我启动H2控制台并从脚本创建数据库.所有测试都通过.应用程序启动时,与应用程序在同一...

使用H2数据库1.3.169测试java应用程序
我正在以两种不同的方式测试我的应用程序.
>内存数据库是在与应用程序不同的进程中创建的.我启动H2控制台并从脚本创建数据库.所有测试都通过.
>应用程序启动时,与应用程序在同一进程中创建内存数据库.所有测试均通过Intellij IDEA 11.3.使用Maven 2测试某些测试失败(创建,更新,删除一个实体,预期数据集与结果不匹配).似乎数据库没有更新.它不会每次都发生,有时构建成功.所有测试都经过验证,所有测试均适用于Oracle和DB2.
可能是问题的原因是什么?
解决方法:
默认情况下配置与内存H2 DB的连接时会出现这种情况,例如:dbc:h2:mem:test
在这种情况下,DB存在,直到他至少有一个活动连接.当最后一个连接关闭时,DB也关闭.取决于您使用/重新使用连接(可能合并)和运行测试延迟,您可以获得比赛条件并获得意外结果.
它可以通过连接参数DB_CLOSE_DELAY = -1来修复,这意味着只有当VM死亡时才关闭db.
这是helphul link http://www.h2database.com/html/features.html#closing_a_database
本文标题为:java – h2数据库测试maven


基础教程推荐
- Java开发学习之Bean的作用域和生命周期详解 2023-01-13
- 是否可以将基本JDBC SQL类型映射到Java类? 2023-10-30
- SpringCloud 分布式微服务架构操作步骤 2023-02-27
- MyBatis-Plus多表联查(动态查询)的项目实践 2023-04-06
- jsp实现上一页下一页翻页功能(示例代码) 2023-08-01
- SpringCloud hystrix断路器与全局解耦全面介绍 2023-06-23
- Spring框架中@PostConstruct注解详解 2023-03-06
- SpringBoot快速通关自动配置应用 2023-02-10
- 浅谈Java内省机制 2023-04-06
- springmvc直接不经过controller访问WEB-INF中的页面问题 2022-11-03