jpa自定义查询多个参数

时间:2019-10-25 07:51:29

标签: mysql hibernate spring-boot spring-data-jpa

我需要使用几个表上的联接来创建jpa自定义查询,以获取记录。

这是我要实现的目标:

  1. 按几个参数对数据进行排序(取决于运行时)
  2. 使用where子句过滤(取决于运行时)

示例:

@Query(value =“从用户a.name,b.city,c.reason中选择a.id = b.id上的加入地址b在a.id = c.id上加入测试c

where whereClause1和whereClause2 // where子句可以是单个或多个

order by orderByClause1 asc / desc //在运行时决定要使用哪个参数进行排序”

列出findData(String whereClause1,String whereClause2,String orderByClause1)

我无法为其创建通用查询。

我也可以采用其他任何方法来解决此问题。 谢谢!!!

1 个答案:

答案 0 :(得分:0)

考虑到查询中的变量数量,您应该通过在运行时组合所有参数来生成查询,并使用entityManager createQuery方法执行查询,或者可以使用hibernate criteria

创建查询