簡體   English   中英

如何在Spring Boot數據JPA中使用自定義查詢

[英]How to use Custom Query with spring boot data jpa

我正在嘗試使用Spring Boot創建一個Web應用程序。 我的持久數據存儲在PostgreSQL數據庫中。 但是,我需要對全文本搜索使用elasticsearch。 (我知道有postgres全文搜索,但我需要彈性)。 為此,我正在使用zombodb 這是Postgres的擴展,允許postgres和ElasticSearch一起工作。 但是它有自己的sql 語法 全文搜索的示例:

SELECT * FROM products WHERE products ==> 'sports or box' 

當我直接使用此查詢時,它可以工作。 但是,當我想對參數使用本機查詢時

SELECT * FROM products WHERE products ==> :searched

它給出“操作員不存在:產品==>字符變化”錯誤。 有什么解決方案嗎?

好吧,在我們的項目中,我們還使用了postgresql(POSTGIS)的擴展。 在我們的案例中,我們直接使用了JPA的本機查詢,甚至postgis特定的方法也完美地起作用。 因此,我建議您使用本機查詢支持。

這是一個例子:

public interface ProductRepository extends JpaRepository<Product,Long>{
    @Query(value = "SELECT * FROM products WHERE products ==> 'sports or box'", nativeQuery=true)
    List<Product> someFancyMethodName();
}

@Query注釋對我不起作用。 我能夠實施這種解決方案 ,效果很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM