【发布时间】:2017-03-28 15:28:52
【问题描述】:
Spring Data JPA 允许将jpql 或sql 查询提取到orm.xml,如Spring Data Jpa Reference 中所述。
在这种情况下,多个查询将在单个 orm.xml 文件中结束。在我们的场景中,这将导致巨大的orm.xml,因为我们有几个巨大的查询。
我想实现每个查询都存储在单独的文件中,例如UserRepository findByLastname 的查询将存储在 META-INF/User/findByLastname.jpql 或 META-INF/User/findByLastname.sql 如果它是本机查询。
是否有可能在 Spring Data JPA 中实现这样的逐文件查询提取?
PS:我知道查询可以使用@Query 注释直接存储在Repository 中,但我们的维护团队希望将它们提取出来。
谢谢你:-)
【问题讨论】:
-
你的维护团队疯了。
-
"orm.xml" 与 Spring 完全无关。它是 JPA API。也不是 Spring Data JPA API。
-
@chrylis 感谢您的反馈。我与维护团队交谈并说服他们不要对每个查询都要求提取查询。查询注释是我更喜欢的,因为一切都在一个地方,这使得存储库更易于理解和重构。
标签: java spring jpa spring-data spring-data-jpa