Spring boot@Query忽略@Table on view调用



我有一个spring-boot 2应用程序,它可以很好地处理映射到MariaDB中的表的实体。我现在进行一个视图调用,并使用@Table(name="ViewExpiredAccounts"(注释将该实体映射到视图,现在当调用该方法时,表名将被忽略。我有一个JpaRepository,它的方法是:

@Query(value = "SELECT v FROM ViewExpiredAccounts v")
List<ViewExpiredAccount> expiredAccounts(); 

当我调用这个方法时,我得到一个错误:

Table 'view_expired_accounts' doesn't exist

查询应该!翻译表名,使发送到MariaDB的最终SQL查询为:SELECT * from ViewExpiredAccount,但它不会这样做。这是春天的虫子吗??

是否重置了hibernate命名策略?

如果是,以下属性可能有助于

spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

最新更新