简单可靠的内存数据库,用于支持 JPA 的快速 Java 集成测试
2022-09-03 06:00:35
如果我使用内存中数据库而不是PostgreSQL,我的集成测试将运行得更快。我使用JPA(Hibernate),我需要一个内存数据库,它易于切换到使用JPA,易于设置且可靠。它需要相当广泛地支持JPA和Hibernate(或者反之亦然),因为我不希望采用我的数据访问代码进行测试。
根据上述要求,哪个数据库是最佳选择?
如果我使用内存中数据库而不是PostgreSQL,我的集成测试将运行得更快。我使用JPA(Hibernate),我需要一个内存数据库,它易于切换到使用JPA,易于设置且可靠。它需要相当广泛地支持JPA和Hibernate(或者反之亦然),因为我不希望采用我的数据访问代码进行测试。
根据上述要求,哪个数据库是最佳选择?
我一直在使用HSQLDB in-memory来集成测试Java中的JPA / Hibernate持久性。启动速度很快,不需要任何特殊设置。
到目前为止,我看到的将HSQLDB与Hibernate一起使用的唯一问题是需要将批大小设置为0,但这可能与旧版本有关。我会挖一下,看看我是否能找到这个问题的细节。
Derby现在支持内存模式,它不再被标记为实验性。