我在执行 junit 测试时使用 schema.sql 文件创建我的 sql 模式时遇到一些问题,而此模式包含 mysql 特定表达式。我必须将 mode=mysql
添加到 H2 网址。
例如这样的东西: jdbc:h2:mem:testd;MODE=MYSQL
但是 Spring boot 自动使用枚举 org.springframework.boot.autoconfigure.jdbc.EmbeddedDatabaseConnection 中定义的 url 及其 url
jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
。
我已经尝试过类似的方法来让它工作,但是 spring 没有从我的 test-application.properties 中获取 spring.datasource.url=jdbc:h2:mem:testdb;MODE=MYSQL
。我的 test-application.properties 中的所有其他设置都已成功读取。
如果我让 spring/hibernate 在我的实体中使用 javax.persistence 注释创建模式(没有 schema.sql 文件),一切正常。
有添加模式的简单方法吗?
原文由 Marco 发布,翻译遵循 CC BY-SA 4.0 许可协议
放
在 application-test.properties 中,加上
在测试课上