2020-05-23 15:41
@tctc4869 enjoy 天然支持 setter getter 的类型,看一下文档中的 enjoy 表达式那一章
2020-05-22 23:58
@永字诀 你看一下 jfinal 依赖注入源码就知道有多极简,200 多行代码,主要就一个类来实现该功能:
https://gitee.com/jfinal/jfinal/blob/master/src/main/java/com/jfinal/aop/AopFactory.java
2020-05-22 23:57
@永字诀 jfinal 的依赖注入与其它框架很不一样,以前不实现这个功能的理由如下:
需要引入大量繁杂而多余的概念,例如:Aspect、Advice、Joinpoint、Poincut、Introduction、Weaving、Around等等,并且需要引入IOC容器并配合大量的XML或者annotation来进行组件装配。
而后续的 jfinal 版本,找到了避开了上述缺点的方案,例如完全无需 IOC 容器、XML 配置,这才加入了依赖注入的功能
而 spring 的实现方案站在 jfinal 的高度一点儿也 "不香"
jfinal 是一直在迭代式前进的,但既便如此,在引入新功能的时候也必定要坚持初心:极简
2020-05-22 17:50
通过以下方法可以很方便扩展:
Generator.setModelTemplate(...);
Generator.setBaseModelTemplate(...);
通过复制出官方的模板文件,然后改成你自己需要的内容,再通过上面的两个配置方法就可以切换生成器模板到你自己的模板了,jfinal 默认模板内容可以在此获取:
https://gitee.com/jfinal/jfinal/blob/master/src/main/java/com/jfinal/plugin/activerecord/generator/model_template.jf
https://gitee.com/jfinal/jfinal/blob/master/src/main/java/com/jfinal/plugin/activerecord/generator/base_model_template.jf
2020-05-21 21:29
@dgood 这个是 JDK 内部细节的问题, JDK 1.8 相对于之前的版本是大版本升级,所以这个版本并不会完全兼容原来的用法
在 jfinal 层面,升到 JDK 1.8 时并没有改动这里的任何代码,换句话说,这个兼容性问题肯定是与 jfinal 无关的
2020-05-21 17:23
@tctc4869 controllerKey 顾名思义,它是 controller 的唯一 key,所以是被独占的,不能与多个 controller 共享
目前的解决办法是让某一个 controller 独享这个 controllerKey,然后在其它需要共享的地方使用 @ActionKey, 当然,这个注解只能用在方法上
你提的这个需求只有极少数人提出来过,目前看来需求并不是太大
jfinal 的路由做成当前的样子当然也是有很多考虑的,不可能支持所有需求,有一定的取舍,例如要考虑性能、学习成本等等
还要考虑对用户的代码有一定的规范性指导,每一个 controller 一个 key 值,对于模块化或者 restful 风格有一定的约束,会带来一些用户在浅层感受不到的好处,但对用户的代码切实有利的好处