2019-03-06 16:16

url 不存在肯定会抛出异常的,比较奇怪的是为什么会抛出 FileNotFoundException 异常,HttpKit 内部是没有使用过这个异常的,是不是你做过什么扩展?

此外,HttpKit 主要是为了 jfinal 内部的 Controller.getRawData() 而开发的,建议使用 OkHttp 这类功能齐备的 http 库

2019-03-06 15:09

@錢勢惘導 用新版本更爽,有一些有用的改进

2019-03-06 14:18

如果你的项目的 webroot 目录是 "web" , 那么启动就是用:
JFinal.start("web", 80, "/" ,5);

启动不了应该是别的问题,看着像缺少 log4j 的 jar 包和配置,在本站首页下载 jfinal-3.6-all.zip,里面有相关的 jar 包

在本站再下载 jfinal demo for maven,里面有 log4j 的 log4j.properties 配置文件,直接用上即可

2019-03-06 14:16

@錢勢惘導 最新的是线上的源码,还没有发布到中心库,使用方法如下:
1:git clone git@gitee.com:jfinal/jfinal.git 命令下载源码到本地
2:cd jfinal 命令跳转到 jfinal 项目的目录下
3:修改 pom.xml 中的 skip 属性为 true
4:mvn clean install 将 jfinal 安装到本地 maven 中
5:将项目中对于 jfinal 3.6 的依赖,版本号改为 3.7-SNAPSHOT

2019-03-06 10:51

越做越好,收藏加点赞

2019-03-06 10:50

@sandyxie 1.8 很普及了,强烈建议升级到 1.8。

1.8 有很重要的功能,性能也好很多

2019-03-06 10:48

用线上最新版,可注入无限的级数,自动判断循环注入

2019-03-05 17:11

@苏坡Man 想获取有序的配置一下:
activeRecordPlugin.setContainerFactory(new OrderedFieldContainerFactory());

2019-03-05 15:44

@maxwade c1 c2 是产品类型,将来出更多类型也方便区分,例如将来出产品,就可以弄成 p1 p2 pn 之类的 produect 的意思

2019-03-05 14:41

仿照 FileRender,写一个 UrlFileRender,一边下载一边往流里面输出即可

2019-03-05 14:39

Record.getColumns() 可以获取到一个 Map,对这个 Map 的 key 进行迭代即可:
for ( String field : Record.getColumns().keySet()) {
...
}

2019-03-05 14:37

缓存 key 的生成策略是千变万化的,jfinal 只能提供一个尽可能简洁的方案,用户需要针对自己的业务添加相应的拦截器去生成 key

具体的实现可以继承 CacheInterceptor ,覆盖里头生成 key 值的方法即可

2019-03-05 14:33

@maxwade 时间数据在订单中基本是确定需要的,我个人还喜欢添加用户 id 进去,很多操作都需要用户 id,这样能大大方便后续展开各种业务

2019-03-05 14:15

第一部分是日期,精确到毫秒,第二部分是订单类型,例如 c1 是指俱乐部(club)订阅 1 年,c2 是指 club 订阅两年,最后一部分是用户的 id 号

生成为类数据,总体上来说就是数据本身包含元信息,从数据中能解读出有用的信息,另一个就是数据不可能重复,可作为唯一值去查询和使用

2019-03-05 14:12

JDK 要使用 1.8 版本,或者更高版本也可以