2017-04-06 10:35

你的项目用的是 0/10 * * * *,那么应该是从 0 分开始,每次增加 10 分钟的时间点执行,如果不正常,改成 0/1 以及 0/2 以及 0/3 去测试一下,数字改小有利于快速看到效果

单步调试一下,你的 0/10 * * * * 这个值是不是正确传递到了 Cron4jPlugin 之中,搞定后回来分享一下

2017-04-06 10:32

cron4j 采用了与 linux cron 表达式一样的规则,只要会用这个表达式就可以了,具体的含义在手册中有详细的说明,下面是手册中的文档片段

cron 表达最多只允许五部分,每部分用空格分隔开来,这五部分从左到右依次表示分、时、天、月、周, 其具体规则如下:
1:分 :从 0 到 59
2:时 :从 0 到 23
3:天 :从 1 到 31,字母 L 可以表示月的最后一天
4:月 :从 1 到 12,可以别名: jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct","nov" and "dec"
5:周 :从 0 到 6, 0 表示周日, 6 表示周六,可以使用别名: "sun", "mon", "tue", "wed", "thu","fri" and "sat"

如上五部分的分、时、天、月、周又分别支持如下字符,其用法如下:
1:数字 n:表示一个具体的时间点,例如 5 * * * * 表示 5 分这个时间点时执行
2:逗号 , :表示指定多个数值,例如 3,5 * * * * 表示 3 和 5 分这两个时间点执行 http://www.jfinal.com
3:减号 -:表示范围,例如 1-3 * * * * 表示 1 分、 2 分再到 3 分这三个时间点执行
4: 星号 *:表示每一个时间点,例如 * * * * * 表示每分钟执行
5: 除号 /:表示指定一个值的增加幅度。例如 n/m 表示从 n 开始,每次增加 m 的时间点执行

2017-04-06 10:28

@hanleytang 扩展一下 LogFactory,然后通过 me.setLogFactory(...) 切换成你自己喜欢的日志框架,包括 logback

2017-04-06 10:27

@airfish 那有可能是这个问题了:http://www.oschina.net/question/941098_93842

记得搞定后回复一下

2017-04-06 10:21

jfinal ide 现在有大量的用户在使用,经过时间与实践的检验,越来越成熟好用,赞一个

2017-04-05 20:18

jfinal 2.3 官方并不支持该功能,升级到 jfinal 3.0 才支持,具体的用法在最新版本的 jfinal 手册中有示例,在首页下载 jfinal 手册即可

做个小广告:加入俱乐部,专享项目中有实战用法

2017-04-05 20:16

@goodjfinalx @quiet_cai 解决办法极其简单,扩展出一个 Eval 指令出来,大致这样:
public class Eval extends Directive {
public void exec(Env env, Scope scope, Writer) {
String content = exrpList.eval(scope);
String result = Engine.use().getTemplateByString(content).renderToString(new HashMap());
write(wirter, result);
}
}

做好以后添加: me.addDirective("eval", new Eval());
用的时候这样:#eval(article.content)

jfinal 3.0 在发布前曾想做这样一个指令,但由于担心 eval 会被人误用带来一定的安全隐患,这个功能暂且留给开发者自己去扩展着玩

如果要做得更好,可以创建 Parser 对内容进行解析得到 ast 以后执行,连 Engine.use() 都不再需要了

2017-04-05 17:37

@airfish 还没解决? 一般来说碰到过这种问题都是一会就解决了,细心去调试一下找到调用是谁发起的就可以解决

2017-04-05 17:35

目前版本的 jfinal 3.0 只能去改源码来扩展一下,因为 addSqlTemplate 只支持 String 参数,需要再提供一个支持 IStringSource 的 addSqlTemplate 方法对外开放的 API 才能方便去扩展这个功能

这个功能后续考虑做进去,目前建议直接修改 jfinal sql 管理模块的源码,简单粗爆

2017-04-05 17:32

@quiet_cai 道理很简单,将这种用法用在 jsp、freemarker、velocity 等等任意的一款模板都是一样的结果,例如在数据库中存放一个 ${value} 数据,然后在 jsp 中使用一样会原样输出,不会被解析

2017-04-05 17:30

@quiet_cai 你的数据内容存放在了数据库中,而这部分内容并不是模板的一部分,只是模板中的一个变量而已,自然就不会被解析了

2017-04-05 16:04

不带参以及带 int 参的 getPara 系列的方法就是操作的 urlPara ,没毛病

2017-04-05 16:01

扩展的指令通过 engine.addDirective 方法添加进去了没?

2017-04-05 14:29

先下载首页的 jfinal demo for maven 在本地跑起来,然后再自建项目

2017-04-05 14:28

mvn compile 看是不是 jar 包没正确下载