2018-04-28 17:07

jfinal club 1.4 中的 actionKey 是不用维护的,点击一下“一键同步” 即可无死角同步所有权限

权限管理不能使用注解,因为注解是写死在 java 代码中的,无法实现完全动态化的配置,jfinal club 1.4 的 java 代码之下的权限是完全动态化的,这个是注解永远无法达到的

直播中你再听一下 jfinal club 的权限设计就知道有多爽了

2018-04-27 14:14

参考 FakeStaticHandler 来做,或者基于 FakeStaticHandler 直接来定制,判断 String target 参数值,做出相应的处理就可以了

2018-04-26 18:13

@千亦Zz 就是 jsp/jstl 的数据读取功能弱,上面的配置对其读取功能进行了增强

jsp/jstl 是二十年前的技术了,建议使用 jfinal 自带的极简、极速模板引擎,爽到极点

2018-04-26 17:48

配置一下:
ModelRecordElResolver.setResolveBeanAsModel(true);

2018-04-26 17:46

@xufu123 莫非你也是美女? 俱乐部希望更多美女加入,谁不喜欢美

2018-04-26 13:19

@caicm PathKit.getWebRootPath() 就是获取项目本地代码的 webroot 路径的,如果没有获取到,很可能是你的项目配置有问题

一直就这么用的

2018-04-26 13:18

@溪碧旗 两万行记录更新,为什么不使用 Db.batch 系列的方法? 这个是专门用于批量操作的

2018-04-26 11:52

@团子sy getRender 为 null ,注意两点:
1: action 中必须调用过 render 系列的方法,否则不可能有 render 被创建
2: 上述拦截器中 getRender() 的调用必须在 inv.invoke() 后方,就像我上面给出的示例一样,inv.invoke() 处于前方

2018-04-26 11:50

可以配置外键的级联删除,程序就不用处理中间表记录的删除工作了

但很多项目都没有做外键关联,也就更谈不上在外键关联的基础上做级联删除了。

jfinal 之下,建议用 Db.delete("delete from role_user where roleId = ?", roleId) 这种方法删除数据

jfinal 不支持配置,需要手写一点代码,表关联的用法可以看看这里:
http://www.jfinal.com/doc/5-10

2018-04-26 11:48

PathKit.getWebRootPath()

2018-04-25 20:11

注意一下 myisam 引擎下执行 update 会造成表级锁

jfinal 所有数据库操作是直接转交给 JDBC 的,jfinal 对于数据库性能没有干预过,碰到性能问题一是从数据库上找,二是检查 sql 是不是本身就慢

2018-04-25 17:37

这个与 jfinal 没有关系,只与你运行 jfinal 的 tomcat jetty 这两个东东运行时的权限有关

有些人会让 tomcat jetty 运行在 root 权限之下,那么上传的东东就是 root 的

2018-04-25 17:36

重点在于,自己如果在 Handler 中处理过了,并且不想让 tomcat jetty 处理本次请求,得用下面一行代码:
isHandled[0] = true;

2018-04-25 17:35

大致改成下面的结构即可:
if(target.matches(regHtml)){
RenderManager.me().getRenderFactory().getRender(target).setContext(request, response).render();
isHandled[0] = true;
} else {
next.handle(target, request, response, isHandled);
}

2018-04-25 17:33

总体上来说,只需要将 target 中的 path var 转换成 jfinal 的 urlPara 就可以了,然后在 action 中可以通过 getPara(int) 来获取