2020-08-05 15:40

@lang重名 其实我很希望 jfinal 代码能去除这类功能性代码,但作为一个可用于千变万化场景下的通用 web 框架,有些较强烈的需求不得不满足

2020-08-05 15:09

有不少同学提出需求,需要掌控 configPlugin 被回调的次序,你通过 me.setConfigPluginOrder(int) 方法就可以调整次序了

该方法在代码中的注释如下:
/**
* 配置 configPlugin(Plugins me) 在 JFinalConfig 中被调用的次序.
*
* 取值 1、2、3、4、5 分别表示在 configConstant(..)、configInterceptor(..)、
* configRoute(..)、configEngine(..)、configHandler(...)
* 之后被调用
*
* 默认值为 3,那么 configPlugin(..) 将在 configRoute(...) 调用之后被调用
* @param 取值只能是 1、2、3、4、5
*/

2020-08-05 15:07

@_imlzw_ 估计是你的项目在哪里动了 ClassLoader 才出现的这个问题

正常流程使用 jfinal 从来不会出这个问题

2020-08-05 11:44

@空指针 换上 mysql 8 的 JDBC 驱动即可

2020-08-05 10:56

你的表达式看着是对的,可能有啥其他原因

改成 0-59/2 * * * * 试试

2020-08-04 15:16

@jfinal爱好者22 在 controller 中通过 @Inject 可以注入,也可以通过 Aop.get(...) 实现

2020-08-04 15:15

@流觞w曲水 代码挺简洁的,赞一个

修改代码格式,尤其值得赞赏

2020-08-04 10:00

@happyboy 但 4.9 是长期版本,会与 5.0 长期并行迭代,这样就不够了

2020-08-04 09:58

@playsex jfinal 发展依靠演化,所以当前我也不知道有什么改进

需要等到进化发生的时刻才知道

2020-08-04 09:12

而,如果定为 4.9.01 , 则任何人都可以区分 4.9.30 与 4.9.20 哪个版本更大

2020-08-04 09:11

5.0 是大版本升级,将会有比较大的改变,而5.0 之前的版本将会进行两位数的小版本迭代,也就是留有从 00 到 99 的 100 个版本迭代的空间可以使用

如果定为 4.9.1,那么 4.9.3 与 4.9.20 哪个版本大? 容易让人造成误解

2020-08-04 09:03

@sky_zy @放羊的丁丁 手动改的日期,以便排序在第一的位置

2020-08-01 17:38

@李通 通过看你的视频,得知问题其实很明显, Model 是一个抽象类,是不允许被创建实例的,所以 objClass.newInstance() 必然报异常

你在 spring 中能用,很可能是因为你在 spring 中创建的类并 "不是抽象类",而是一个具体类,也就是说 spring 中你能获取到传入泛型的具体类型,而在 jfinal 中你没有获取到

没有获取到的原因很可能是泛型获取的时间太早了,因为 controller 中 action 的初始化是在启动时进行的

你试着将 LayuiCurdControler 改成不用 action 参数注入而是使用 getBean 来解决:
public class LayuiCurdControler 《E extends Model《E》》 extends Controller {
public void saveOrUpdate() {
Class beanClass = getBeanClass();
Model model = getBean(beanClass, "", true);
renderJson(...);
}
}

以上有两个关键点:
1: saveOrUpdate 方法不要给定形参,而是在方法体内部用 getBean或者 getModel 来实现

2:通过 getBeanClass() 来获取当前泛型传递过来的具体类型,具体到你演示的例子中,值为 DbConnectionInfo.class

getBeanClass() 中可以利用 java 的一些反射 API 来获取