2018-01-19 17:48

@cnzzr 只要是确实配置成功了,无论在哪配置都可以

2018-01-19 17:46

@一直讨嫌 用的时候,将 pom.xml 里头的一个 skip 配置改为 true, 然后用:
mvn install

将项目安装到本地,最后改下 jfinal 版本号为: 3.4-SNAPSHOT 就可以使用了

jfinal 3.4 主要是对 oracle 的 Timestamp 以及与日期有关的类型做了非常细致的处理,不再需要自己做什么事情了

2018-01-19 17:44

@cnzzr stat 过滤器并不是独立运作的,还需要 StatViewServlet 配合使用,才会有数据

本质上来说,这个问题与 jfinal 无关,因为你的配置是在操作 DruidDataSource,对其注入 filters ,jfinal 不会干预这个事情,更不会干预 DruidDataSource 的运作

2018-01-19 17:35

此外,jfinal 3.4 针对 oracle 的支持做了很细致的增强,有兴趣的可以先用上,代码在这里:
https://gitee.com/jfinal/jfinal

这个代码可以直接使用,严格测试过

2018-01-19 17:34

这个问题的分享很稀少,十分有价值,感谢你的分享,收藏、点赞

2018-01-19 17:33

在 DruidDataSource 的 setFilters(String) 方法中设置一个断点,看程序执行没执行进去

2018-01-19 16:50

@JFinal9527 参考下这个:
http://www.jfinal.com/share/324
http://www.jfinal.com/share/492

2018-01-19 16:30

@JFinal9527 调用一次 SqlReporter.setLog(true) 即可打完收工

2018-01-19 15:51

是否指 jfinal action report?

可以通过 ActionReporter.setWriter(Writer) 来实现

2018-01-19 15:49

在 controller 中的 renderNull() 操作仅仅是避免 ActionHandler 中在没有任何 render 时调用默认 render

2018-01-19 15:49

找到是什么地方使用了 resoponse ,以及对其的 close() 操作,去掉这个操作就好

2018-01-19 15:48

JFinalJson.getJson() 这个是指定用的 jfinal 的 json 转换实现,而 @JSONField 是 fastjson 实现专用的,这两者毫无关系

因此,解决办法是 JsonKit.toJson(...) ,或者 FastJson.getJson().toJson(...);

2018-01-19 14:02

renderQrCode(....)

2018-01-19 12:36

从数据库得到文件名与路径,然后:
new File(path + fileName).delete();

即可删除

2018-01-19 12:32

null == null 返回的是 true

文档中假定了 x.accountId 肯定不为 null,因为被迭代的记录是事先存在的

注意看表达式中用到的是 x.accountId,这个变量 x 在 jfinal 文档中惯例都是被迭代的变量,所以这个例子再补上两行代码如下:
#for ( x : accountList)
#if( loginAccount.id ?? == x.accountId)
...
#end
#end

上面这种场景下的 x.accountId 不会为 null 值