我在mysql中创建了一个视图,我在jpa中使用这个视图作为实体,
@Entity
@Immutable
@Table(name = "my_view")
现在我面临的问题是,我正在尝试通过在查询对象中设置setmaxresults来进行分页,在后端发生的事情是视图没有限制,因此它尝试获取所有记录,然后应用setmaxresults,这会破坏我本可以编写本机查询的性能,但它有点混乱。
生成的查询如下所示
select e from myViewEntity where 1=1 and (adding addition constraints as parameter)
我的问题是,有没有什么方法可以将limit作为动态值传递给视图??
注意:我使用别名将约束传递给视图。
1条答案
按热度按时间nbnkbykc1#
你可以用
setFirstResult
以及setMaxResults
方法通过动态传递firstresult和maxresults的值。