使用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 Http请求方式之RestTemplate常用方法详解 2023-06-01
- Java实现Excel文件加密解密的示例代码 2022-11-29
- java发送kafka事务消息的实现方法 2023-03-06
- java实现文件上传到服务器 2023-01-29
- mybaties plus实体类设置typeHandler不生效的解决 2022-09-03
- Spring注解驱动之@EventListener注解使用方式 2023-06-06
- Java类和成员变量声明类详解 2023-03-31
- SpringBoot中使用HTTP客户端工具Retrofit 2023-01-08
- Spring Boot 整合 Reactor实例详解 2023-05-14
- SpringBoot实现过滤器拦截器的耗时对比 2023-02-05