我正在使用 Spring data jpa 来执行本机查询,这是示例。
@Query(value = "select name from customer", nativeQuery = true)
public List<String> findNameNative() ;
现在,由于公司限制,无法将整个查询放在这里,但查询非常庞大,比如 100 行。
我们有很多这样的疑问。
有没有一种方法可以在单独的文件(例如 xml 或属性文件)中定义查询并在此处引用它们。 (保持代码整洁)
感谢您的帮助。
Thanks.
您可以将 devalue
,这是查询本身。在 - 的里面src/main/resources
,创建一个名为的文件夹META-INF
。在其中创建一个名为jpa-named-queries.properties
.
假设您的实体名为Customer
表格是TBL_CUSTOMER
.
当您将查询保留在代码中时,在您的存储库中,您就拥有了您编写的代码。你可以这样外部化它:
客户存储库.java
@Repository
public interface CustomerRepository extends JpaRepository<Customer, Long> {
@Query(nativeQuery = true)
public List<String> findNameNative();
}
jpa 命名查询.properties
Customer.findNameNative=\
SELECT C.NAME \
FROM TBL_CUSTOMER C \
WHERE CONDITIONS
名称必须匹配,并且必须使用 \ 作为换行符。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)