2019-08-21 16:32
@Inject 注入并不是所有地方都可以使用,例如你自己写的工具类中就无法获取,需要使用:
Aop.get(...) 获取
@Inject 可以使用的地方如下:
1:Controller 中
2:Interceptor 中
3:Validator 中
4:以上三个组件注入的组件的子组件,例如:
MyController 中使用 @Inject Aaa 注入了 Aaa 对象, Aaa 中又使用了 @Inject Bbb 注入了 Bbb 对象,这样可以一直无限注入下去
简单说,只要是从上述三个组件开始注入的,就可以一直不停地注入下去
但是,假定你有一个 MyKit , 该类的实例化对象如果是在上述三个组件中注入的是可以的,否则需要使用 Aop.get(...)
上述机制的原因如下:
使用 @Inject 注入需要 jfinal 接管对象的创建,而 Controller、Interceptor、Validator 组件的创建本身就是 jfinal 接管的,所以在这三类组件中可以使用 @Inject
文档中已经说得很详细:
https://www.jfinal.com/doc/4-5
注意看红色字体强调的部分
2019-08-20 17:27
@MrChu 你安装的貌似是 JRE,或者 eclipse 配置的是 JRE,所以 Edit library 的那个对话框选择第一项 Execution Environment 选好用的小扩号中显示的是 jre-1.8.0_171
在我这里小括号中显示的是 JavaSE-1.8
2019-08-20 11:12
@nbjgl 也并不是必须用 JFinal 的 API 才行,只要序列化与反序列化用的是同一个规则即可
jfinal redis 插件默认用的 fst 这个第三方进行的序列化与反序列化,所以,你在 spring boot 等其它场景需要与 jfinal 互相使用同一个 reids 中的数据时,也只要使用这个 fst 就可以了
你还可以通过 RedisPlugin.setSerializer(...) 来重新制定自己的序列化、反序列化规则,同样地,只要将不同地方的这个规则统一,就可以互通了
2019-08-19 09:39
@jfinal新手小崽 文档里其实有的:
https://www.jfinal.com/doc/1-8
刚刚又在另一个地方新增了重复的文档:
http://www.jfinal.com/doc/1-7
这样大家就更能看到了
再一个 jfinal 官网提供的 demo 里头都是有 web.xml 的
2019-08-17 23:27
@Dull jfinal 4.4 已添加对 @Para(defaultValue = "") 的支持,麻烦尽快给我使用反馈,确保万无一失
https://gitee.com/jfinal/jfinal/commit/88c6b339695553c9bb36a93f302bd09924534096
2019-08-17 20:49
@Aizen 这个与页面输出的总时长有关,例如,你的这个 add.html 页面,可能数据量很大,那么服务端需要更多时间向客户端输出数据,而客户端在接收数据还未完毕的过程中断开连接就会报异常
典型的情况是浏览器在接收数据时被关掉程序
页面内容传输的所需的时间越长, 出错的概率就越大,你可以检查一下这个 add.html 在浏览器的数据量是多少,应该会比别的页面大