-1

我的表名是驼峰式的,休眠(v5)命名是 PhysicalNamingStrategyStandardImpl,它在使用 @SpringBootApplication 运行应用程序时有效,但是当它用于测试和使用 @DataJpaTest 时,它将驼峰式名称全部变为大写,因此测试不会得到执行。

我还确保我有两个单独的 application.yml 一个用于开发,一个用于测试,一个用于测试工作

这就是我声明适用于 dev/local 的命名的方式:

jpa:
  hibernate:
    naming:
      physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

表名声明如下:@Table(name = "ClinicalUser") 得到以下错误:

ERROR 35284 --- [           main] o.h.engine.jdbc.spi.SqlExceptionHelper   : Table "CLINICALUSER" not found

我想再次提到,这在开发/本地环境中使用时有效。

我检查了所有其他相关问题,他们要么无法连接到他们的测试 application.yml,要么他们有不同命名的不同问题。

4

1 回答 1

0

我真的不明白到底出了什么问题,但我对我的 pom.xml 文件有 h2 依赖,在删除它并@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE) 在它下面添加它之后@DataJpaTest

于 2022-01-28T22:12:46.127 回答