2017-02-23 15:47

纯配置问题,下载首页的 jfinal demo 项目,然后用 eclipse 的 import maven project,导入完成后,直接运行一下 DemoConfig 即可运行起来,不用改任何东西

2017-02-23 14:51

缺少一个 jar 包, cos.jar ,在首页下载 jfinal-3.0-all.zip 这个文件,然后里面有一个说明文件告诉了各种功能所需要的 jar 包,并且提供了所有 jar 包,按需取用

2017-02-23 11:55

renderFile 仅用于文件下载功能,所以在 FileRender 实现类里面去除了对浏览器的 cache 控制,如果确实需要缓存功能,可以通过定义一个 public MyFileRender extends FileRender 的方式加入缓存控制,这样用一下: render(new MyFileRender(...))

通常对于需要缓存的静态资源,都是让 nginx 或 tomcat 去接管了,不需要使用 renderFile 去操作

2017-02-23 11:51

Db.batchSave(...) 仅仅是对 JDBC 的 batch 执行 sql 功能的一个极薄封装,而 JDBC 的 batch 功能使用的是 PreparedStatement ,只能接受一条 sql,这也决定了 Db.batchSave 只能接受一条 sql + 多组参数的工作模式

Db.batchXxx(...),带 List sql 的参数 api 工作模式是使用的 Statement,可以接受多条 sql,但坏处是不接受参数,所以要将所有 sql 拼接好

Db.batchXxx(...),带 List modelOrRecord 的工作模式也是使用的 Statement,可以接受一条 sql 与多个参数,但参数名是固定的

只有以上三类 batch 方法,使用者需要对此做出权衡

2017-02-22 23:15

你还可以通过自定义指令的方式,去扩展任意的指令,非常简单的实现各种各样的功能,参考一下 jfinal 的 #escape #date 指令的实现,这两个指令是扩展出来的

2017-02-22 23:12

我再补充一下 jfinal 手册中还没添加的内容,有关日期数据格式化输出的方法,只需要使用 #date 指令即可:
1:#date(value) 使用默认格式输出日期型数据,默认格式可以通过 me.setDatePattern(...) 进行配置

2:#date(value, "yyyy-MM-dd HH:mm:ss") 使用指定格式输出日期型数据

2017-02-22 23:09

jfinal template 可以用于任何 java 开发环境,并不限定于 web 项目,所以 template 没有与 web 中的 context path 发生耦合关联,因此,默认是不支持的

但是可以极其简单的支持,只需要在 configHandler(Handlers me) 中添加一句:
me.add(new ContextPathHandler("ctxPath"));
就可以在模板中使用如下方式获取了:
#(ctxPath)

2017-02-22 21:51

代码生成用的是 jfinal template 么?

2017-02-22 21:50

MixedJsonFactory 建议加一下

2017-02-22 21:46

倍儿爽啊

2017-02-22 20:38

@筱-舞瞳 问题是除了你之外,没人知道是什么错误,所以没法回复你

2017-02-22 17:51

@LittleBirdys @semooncun jfinal 的任务调度是对 cron4j 进行了极薄封装,而cron4j 应该是不支持秒的

一般情况下精确到分就满足了需求,如果确实不能满足,建议在 jfinal 之中直接使用 quartz 这个第三方,也不需要整合,直接用就好

2017-02-22 17:48

手册中有明确的说明,注意看手册

2017-02-22 17:48

if 分支为 true 的时候有 renderJson 在后面等着,如果为 false 呢? 为啥没有 render 系的方法等着?

jfinal 会在 action 请求没有调用任何 render 系方法时,自动给你调用一个 render(String view) ,view 参数的规则是:
view = baseViewPath + viewPath + methodName + 扩展名,所以就出现了异常提示:Tempate "/register/check.html" not found 的错误

2017-02-22 15:45

@无聊2356 SqlServer 可以在外层套一个 select * ,大致这样:
paginate(1, 10, "select *", "from (原有sql 在此) as temp", ....)