2018-06-05 11:55

NotAction 确实无法解决 actionKey is already in use 的问题,因为这个是通过拦截器在被请求的时候临时来决定这个 action 不存在的,在路由映射阶段仍然是被映身为 action 的

改改方法名,或者改成 protected 就好

2018-06-05 11:53

这肯定是没更新到 jfinal 3.4, 或者是有老版本 jfinal 同时被引入了

可以通过下载首页的 jfinal demo,然后在页面中试用 #number 指令得到证实

2018-06-05 10:58

@万恶码农 出现 NoClassDefFoundError 的异常就好办了,只需要删除你本地 maven 库中的 jfinal 目录,然后让 maven 重新下载一次即可

原因是: maven 下载 jfinal 的时候出现数据错误,需删掉重新下载一次

2018-06-05 09:44

@万恶码农 那必定是老版本的依赖还没有去除,仔细排查一下

还有一个就是你项目中的其它 dependency 中是否对老版本的 jfinal 有依赖造成了多个 jfinal 版本的存在

2018-06-05 09:38

@万恶码农 改一下版本号就可以了,将原来的 3.2 改成 3.4 升级完成

2018-06-05 09:38

@pary 方法还是一样的,看一下控制台输出的 jfinal action report 中的 parameter 这一栏中的参数,然后选用一个 getPara 系的方法即可

2018-06-05 09:36

paginate 操作与数据库有关,需要在业务层中调用,那么你可以在业务层中利用 Db 中的各种方法来实现 paginate ,自己手动拼接 sql 就可以了

此外, 5W 条数据的分页根本不是个事,肯定是 sql 造成了多次全表扫描才会很慢, 2011 年的时候我做的一个项目,几千万条数据分页一点也不慢

2018-06-04 20:56

升级到 jfinal 3.3 或者 3.4 即可,如果不想升级,可以拿到 jfinal 3.4 中的 NumberDirective 源代码放到你的项目中,最后配置一下:
engine.addDirective("number", NumberDirective.class);

2018-06-04 17:23

@pary jfinal 是后端框架,只能管到后端的事情,参数获取的时候,必须要参数确实存在

至于前端问题,我自己也不太熟悉,在网上找找资料

2018-06-04 16:24

@童年 多思考总结、多写代码就可以

2018-06-04 16:23

在 jfinal enjoy 中使用递归就跟在 java 使用递归没有本质差别,就是这么用的

模板中的空格,能去的都已经去掉了,不能去的是没法做主去掉的,因为有些空格、换行是模板渲染以后内容的一部分

感谢分享

2018-06-04 11:11

@穿越123 很久没用 mybatis,忘得差不多了

2018-06-04 10:32

@543734235 缺少 jfinal-3.4 的 jar 包,在首页右侧下载 jfinal-3.4-all.zip,里面都有

2018-06-03 22:23

static 变量一定是全局共享的,这个是 java 语言决定的,不是 jfinal 决定的。

这个问题自然与 main 启动还是 tomcat 启动无关

再仔细调试确认一下

2018-06-03 22:21

虽然在 jfinal 有了 SQL 管理功能后 mybatis 已没有了任何优势:
http://www.jfinal.com/doc/5-13

但分享还是要先点赞