Spring JPA查询基于变量值的灵活选择列

时间:2017-01-11 03:52:45

标签: java spring hibernate jpa

我想根据searchBy变量的值更改列,因为方案是,我们不确定我们要搜索哪个列。所以我想让专栏变得灵活。

example: 

String searchBy = "id";
int value = 1;

我的查询应根据这些规范进行调整。

在我的Rest控制器中

String translatedQuery = 
"SELECT b From Booking b WHERE b."+searchCriteria.getSearchBy()+
" LIKE '%"+searchCriteria.getValue()+"%'";

List<Booking> booking = bookingRepository.getSearchedBookings(translatedQuery);

在我的JPA信息库中

@Query(":translatedQuery")
public List<Booking> getSearchedBookings(String translatedQuery);

预期查询将类似

"SELECT b FROM Booking b WHERE b.id LIKE '%1%'"

0 个答案:

没有答案