jfinal 3.0 分页功能缺陷

在 jfinal 2.2 的时候  

 是可以的

但是在 3.0 

replaceOrderBy 中的代码被注释了

本人亲自测试  
mysql 
SELECT COUNT(*) FROM `feedback` ORDER BY createAt DESC
成功
但是在postgresql 中
SELECT COUNT(*) FROM `feedback` ORDER BY createAt DESC 
失败

波总  尽快修复吧

评论区

zzhkiller

2017-04-08 16:15

JFinal

2017-04-08 16:42

对于 order by 的 replace 操作本是 jfinal 对 select count(*) 分页时获取分页时获取总数据条数的一个小优化,因为 select count(*) 的最终结果与 order by 无关

但是用正则去 replace 这个 order by 有时候无法处理那类非常复杂的 order by 子句,例如 order by (select ..) as temp desc,所以 jfinal 3.0 就去掉了这个优化。

去掉以后发现 postgresql 不支持 select count(*) 语句中出现 order by,建议用自定义的扩展方言解决一下, jfinal 3.1 会处理好这里

zzhkiller

2017-04-10 09:53

@JFinal 波总什么 更新 3.1 啊

平平

2017-04-14 18:29

在SQL Server 中也是失败的。

chaoge

2018-12-19 18:31

@JFinal 波总3.4版本了这个 order by还是给移除了

热门反馈

扫码入社