2022-02-13 15:08

@山东小木 支持前端传入,用法和以前一模一样,不用太多改变,如果Action里面只有一个分页查询,可以使用拦截器@Before(PaginateInterceptor.class) 参数有totalRow就行。
如果有多个分页处理,手动MyDbPro.paginate(传入总行数即可。
由前端缓存 总行数,查询条件改没改变,前端自然是知道的,前端查询条件如果改变,传入的总行数传null或者不传值即可,都会刷新最新的总行数

2022-02-11 11:38

@山东小木 是的,我遇到一些慢SQL有因为 select count(*) 导致CPU暴涨的,在索引已经加过的情况下,就是去掉paginate,手动find查询再二次包装返回对象了。
应该是可以扩展paginate方法的,但毕竟我没有那么多慢SQL,业务哪个点遇到了就单处理了,没做封装。确实可以瞅瞅paginate方法看咋简单的扩展一下

2022-02-10 15:18

@山东小木 o(╥﹏╥)o 没啥经验,设计表业务的时候尽量避免大表出现,做好索引。。。如果CPU还飙升,就根据查询条件缓存总行数,别总去count*,手动find分页就行。。。如果还飙升,充钱就行。。。我一般优先充钱解决问题。。。
image.png
image.png

2022-02-09 17:38

FstSerializer 序列化get失败了,那得看set进去的时候用的啥,set 和 get 得用同一种方式了,

2022-01-19 11:32

代码还经常在打磨了,没有什么新需求吧。。。
https://gitee.com/jfinal/jfinal/commits/master

2022-01-17 12:13

哎,不是停服了吗? 我还以为是停更的意思了😺

2022-01-17 12:11

@pandalam 使用debug模式,打个断点看吧,就知道了,得用键,不要用值

2022-01-17 12:09

@pandalam 得,你还是没看懂我说的,你改成:
renderJson("resule", validateCaptcha("captchaCode"));
就好使

2022-01-16 16:13

根据描述,_captchaCode 这个是前端穿过来的值,而validateCaptcha(键名),这俩不是一个值的。
源码也没看仔细,源码是:
return com.jfinal.captcha.CaptchaRender.validate(this, getPara(paraName));

注意是:getPara(paraName)

PS:
https://gitee.com/jfinal/jfinal/blob/jfinal-4.9.16/src/main/java/com/jfinal/core/Controller.java

2022-01-14 15:02

@happyboy 我们也有老项目,,,以前的项目一个功能就是一个页面,,,也没有抽取,,,真是懒得改了,费时间,还有稳定性问题。。。新项目用新架构,没毛病哈哈 ,老项目还是用Tomcat靠谱些。。。

2022-01-09 10:34

打个断点试试呗,多试验,得出的结果记忆更深刻。
tx里面的同一个Db(或者说DbPro)对象操作增删改查返回结果和平时没区别,因为他们是同一个Connection

2022-01-04 17:30

@happyboy 每个楼只要有一个人站出来,说我去搬菜就行了。。。可惜很多地方没有人站出来。。。菜在眼前,志愿者不足。。。现在来了很多志愿者,应该有所缓解。。。算了,这里不过多讨论,做个纯粹的技术社区~

2022-01-04 16:09

@happyboy 免费发菜了,不过最难是菜和物资到小区了,得有志愿者取送,最后一米是最难的。。。