2018-03-23 16:04

@tonysb @怎懂落寞 用set 方法继续添加参数即可,例如:
Kv.by("columnNames",columns).set("condition", condition))

2018-03-23 11:55

@怎懂落寞 对于翻页来说,通常就是 url 问号挂参,代码的写法多种多样,就看你对 enjoy 理解的深度,我下面给出一种写法:
#set(append = "applicant=" + applicant + "&department=" + department ....其它条件省略)
#set(append = "?" + append)
#@paginate(blogPage.pageNumber, blogPage.totalPage, url)

上面的代码也就是说,无论你变量值是否存在,我都给你拼接上,没有的话就是 null,被传到后端时过滤掉这些 null 值条件去生成 sql

当然,还有更好的办法,做个模板函数或者 shared method 来辅助,下面给出模板函数的方法:
#define buildAppend(cnd)
#set(append="");
#for(x :cond)
#if(x)
#set(append = append + x)
#end

#set(append = "?" + append);
#end

用的时候这样:
#@buildAppend([applicant, department, kemu, payment ....其它条件省略])

以上就相当于是写程序了, enjoy 的功能全在那里了,具体怎么使用就看你自己了

2018-03-23 11:21

@JFinal9527 如果是放 cache 中,也取来 token 也是要看看是否过期,过期时间是在放在 cache 当时就计算好的,取出来的时候只需要与系统当前时间对比一下就可以了

当然,你如果用的 ehcache 可以设置最大存活时间,让 ehcache 的过期功能来代替判断,不过你仍然也可判断 cache 是否存在,不存在代表已过期

2018-03-22 22:06

先放数据库,如果性能足够就可以这样用着,如果需提升性能,再引入一个从应用到数据库的中间层 cache

放数据库方便做集群,而且重启应用时依然有效,因为数据库是持久化数据

2018-03-22 22:04

@不能忍受 换个 sqlserver 驱动试试,然后 druid 也换成新版本民

2018-03-22 18:06

路由问题,很好解决,看一下路由相关文档:
http://www.jfinal.com/doc/2-3

2018-03-22 18:05

@怎懂落寞 用 enjoy 的 #if 指令 或者三元表达式等功能动态动生成条件即可

2018-03-22 18:04

@yjjdick1990 用好 Spring 的 AOP 来代替 jfinal 中的 Tx 拦截器就能实现了,有好几个这个问题的分享,可以找找

2018-03-22 18:02

@陈本布衣 这个问题与 model 的 get set 方法无关,也与是否为普通 jave bean 无关,与sqlite 不支持 JDBC 规范有关

jfinal 的数据库组件,仅仅只是对 JDBC 做了一次极薄封装。相当于 jfinal 仅仅只是将你的 sql 与其参数,直接扔给了 JDBC

2018-03-22 18:00

@愚者小哥 mysql 默认是不区分大小写的,难道你配置了? 或者是 Linux 系统?

2018-03-22 17:59

我看到你有一个 public static void main(String[] args) 方法, 难道是启动该 main 方法时使用的 ActiveRecordPlugin

确保 ActiveRecordPlugin 无论在 web 环境下,还是在你的 main 方式启动下都要被初始化

2018-03-22 17:55

用一下 FastJson.getJson().parse(...) 可以用 fastjson 来转

如果希望 renderJson() 之类的方法也默认用 fastjson,可以这样来配置一下:
me.setJsonFactory(new MixedJsonFactory());

2018-03-22 00:03

有几个人碰到过类似的问题,具体是怎么弄出来的不记得了

不过有一点是可以确定的,这个绝对与 jfinal 无关, 建议设置一下断点,停在断点时看一下调用栈,看是谁在发起调用

2018-03-22 00:00

有可能用的不是 jfinal 官方的 jar 包,曾经有一些人将分页的部分逻辑改为下面的:
当跳去的 page 值大于总 page 值时,总是跳到最后一页

就好比你碰到的这个情况,第二页直到第十页数一样,很可能是总页数就是 2,后面的翻页操作都跳到了第二页

当然,官方出品的 jfinal 是不会有这个行为的

如果不是上面的这个原因,很可能是 sql 没写对,检查一下