2018-02-07 11:39

@JFinal9527 过一天再启动报错,很可能是用的 kill pid 强调关闭的项目,造成日志文件句柄未关闭

2018-02-06 17:23

当响应给微信平台太慢时,微信平台会重复回调,以确保业务被正确执行

考虑到一些不确定性因素,无论你的程序响应有多快,都必须要有处理微信平台重复回调的机制

不同的业务处理办法不同,例如,如果是订单支付部分的处理,在订单支付回调后可以将 isPaid 字段置为 1,然后如果微信平台重发回调时,可以通过这个字段值来确定是否已经处理过

未处理则放行,处理过则响应一个值告诉对方已处理

2018-02-06 14:40

问题是?

2018-02-06 14:40

使用 maven 管理项目时,jar 包根本就不会存在于项目目录之下,而是存在于 maven 的 repository 之中,所以这个问题不成为问题

如果你手动添了 jar 包到项目中,也可以通过使用 .gitignore 文件来过滤不想被提交的文件,几乎所有提交到 git 库的 java 项目都会有这么个东东:
https://gitee.com/jfinal/jfinal/blob/master/.gitignore

2018-02-05 21:48

怎么可能跳过呢? 春节后发布 jfinal 3.4

2018-02-05 21:47

参考这个解决一下:http://www.jfinal.com/feedback/2429

2018-02-05 21:46

缺少一个 configEngine(Engine me) 方法,下载首页的 jfinal demo 参考一下

此外,缺少 configEngine 方法但 eclipse 并未提示错误,证明你引入的 jar 包是 jfinal 3.0 之前的版本,而运行时发生异常,证明运行时实际依赖的是等于或者高于 jfinal 3.0 的版本

因此,你的项目还存在配置问题,参考一下首页可以下载的 jfinal_demo_for_maven 这个 demo

2018-02-05 21:43

你的静态方法最后一个参数是 int 类型,而你调用的时候,最后一个参数是字符串,参数类型不匹配,所以异常提示很清楚:
Shared method not found: anniu(java.lang.Integer, java.lang.Integer, java.lang.String)

2018-02-05 21:40

@dafeizi 看下 jfinal AOP 这一章的文档,里面有例子:http://www.jfinal.com/doc/4-2

此外,首页下载 jfinal demo 中也有例子

2018-02-05 21:37

这个问题在 jfinal 3.4 版本中被很好解决了,直接使用线上最新的 jfinal 3.4 即可,通过如下四步解决:
git clone git@gitee.com:jfinal/jfinal.git
cd jfinal
修改 pom.xml 中的 maven-gpg-plugin 配置的 skip false 为 skip true 值
mvn install
修改你自己的项目对 jfinal 依赖的版本号,改为 3.4-SNAPSHOT 版本

上面四步可以将 jfinal 3.4-SNAPSHOT 这个版本安装到你本地的 maven 库,然后就可以直接使用了

这个版本严格测试过,可以直接使用,后续 jfinal 3.4 正式发布以后,你只需要去掉
3.4-SNAPSHOT 后面的 SNAPSHOT 就可以完成升级了

2018-02-05 21:33

@sqhua Db.batchSave(...) 这个并非 Active Record 模式,所以可以,但 Model.save() 是 Active Record 模式

方法名虽然都有一个 save,但实现的方式、目的不同

2018-02-05 21:31

代码中看不出来是什么样子的代码,原有代码被过滤了

仅依靠 me 这个对象无法实现单例,主要因为 jfinal 不玩 IOC 这一套,所以对于线程安全的对象来说,放一个对象到 me 中,可以避免在使用的时候去 new 出来对象,一是为了节省时空,二是为了书写简洁

2018-02-05 21:28

在官网下载 jfinal demo,看里头的 log4j.properties 文件,如果里头是 DailyRollingFileAppender,参考一下配置

2018-02-05 21:28

可能是你的 log4j 版本不对,我一直用着 DailyRollingFileAppender,非常好用