我正在尝试找到实现按关键字搜索的解决方案。最终 API 应类似于 /persons/search?keyword=test
。搜索应检查人员表(firstName,lastName,school,...)的几列
。
在结果列表中,我需要至少在一列中包含关键字的人员列表。
使用 Spring Data Rest 实现这一点的最佳解决方案是什么?
最佳答案
在存储库上使用@Query
注释,您可以执行以下操作:
public interface PersonRepository extends CrudRepository<Persons, Long> {
@Query("SELECT p FROM Persons where LOWER(p.firstname) like :key%"
+ " or LOWER(p.lastname) like :key%" )
public List<Person> searchBy(@Param("word") String key);
}
注意:我做了类似的事情,但我现在没有确切的代码,所以只需检查语法,但我能够实现的是搜索的能力使用一个键在多个列上。
关于java - Spring Data Rest 按关键字搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49249350/