2020-07-30 20:43

检查一下部署的时候 lib 下面是否存在 jfinal-xxx.jar 这个包, 错误提示明确指出了 JFinalConfig 找不到

如果 jar 包存在,要看 start.sh 中的 CLASS_PATH 变量有没有添加 lib 这个目录,此外,一定要注意 linux 下面的 .sh 脚本的换行字符需要是 \n,而不能是 \r\n

这个是 linux 的要求,注意看文档中强调过这件事:
https://appface.cn/doc/1-5
注意看上面文档中的:脚本无法使用问题

这个错误是很容易解决的

2020-07-29 17:16

@jfinal爱好者22 忘了一个重要的配置:
configConstant(Constants me) {
me.setInjectDependency(true);
}

以上配置开启注入功能,如果希望对父类进行注入,还需要添加一行配置:
me.setInjectSuperClass(true);

2020-07-29 16:38

@jfinal爱好者22 使用 @Inject 注入,必须有一个起点是被 jfinal 接管的,三个主要的起点:
1:Controller
2:Interceptor
3:Aop.get(...)

这个就跟 spring 中使用依赖注入的时候,对象的创建是被 spring 接管的是一个道理,不能自己 new 出对象, new 出对象,意味着没有被框架接管,没被接管就没有注入的机会

2020-07-29 16:12

在 controller 中使用下面的方式注入 NoticeService 才可以:
public class MyController extends Controller {

@Inject
NoticeService noticeService;
...
}

也就是说,注入需要有一个起点,这个起点可以是 Controller、Interceptor,也可以是这些起点的下一层

检查一下你的 NoticeService 是 new 出来的,还是用 @Inject 注入的

如果不能在起点进行注入,还可以通过 Aop.get(NoticeService.class) 进行注入

2020-07-29 10:33

这个功能好,要注意数据万一出现无限循环的情况,可以引入一个安全变量,限定递归的总次数,就跟 JFinalJson 内的 depth 用法类似

2020-07-28 23:11

输出的是 DEBUG 调试信息,不是错误信息,将日志级别调高到 WARN、ERROR 就不会输出这个

2020-07-28 23:10

@shisan27 PostMan 可以选择提交格式,例如 x-www-form-urlencoded ,而你可能选择的是别的格式,才碰到了这个问题

2020-07-28 23:06

jfinal 官网一直是只支持 www 的,后来觉得这个长太才改成了去除 www,域名也就忘了加了

2020-07-28 23:02

@SuperEric 你给的例子是因为存在 urlPara,正确的姿势是比较下面两个 url:
https://www.jfinal.com/doc

https://www.jfinal.com/doc/

2020-07-28 22:59

用生成器生成的 Model 具有 setter getter, 这已经是其它实体类的场景了

2020-07-28 22:58

@永字诀 通常来说,做 IT 教育、录制视频是比写代码更持久、影响力更大的一个领域,培训师干到四五十岁都没问题,视频传播更快更广

如果对于这个领域感兴趣,可以多录视频,深耕进去,想想马士兵当前被流传的 java 视频,对他后续影响力的提升就知道了

2020-07-28 22:54

看不出是什么有代码有问题,异常信息不足以定位

2020-07-28 22:53

windows 支持 /upload , 只不过与 linux 行为不同而已,你试一下,找一找文件被上传的路径就知道 windows 是如何支持 /upload 的了

2020-07-28 22:51

你用的 tomcat, 并且我不知道你如何配置的 tomcat,不好猜

2020-07-28 22:49

@听风道长 paginateByFullSql 相当于将计算总记录数的 sql 与获取数据的 sql 全交给你自己指定, jfinal 不干预分页,理论上来说是可以的

其实,你还可以通过使用 jfinal 现有的 Db.queryInt(...) 以及 Db.find(...) 这两个方法自己组合实现分页功能,来针对当前 jfinal 不能满足需求的情况