2020-03-06 20:33

@Leifantan 高版本的 enjoy 是严格按照你的模板内容进行换行的,决不会自做主张去换行

注意检查实际生成的数据,还要检查一下 enjoy 版本是不是较高版本

2020-03-06 20:31

@家住海边 指令缺少 #end 块,例如 :
#if (...)

上面的例子中缺少 #end

注意要仔细检查,异常已经明确告诉了你错误在 travel_registration.html 文件 第 2 行

2020-03-06 20:30

参数错误了,注意传递正确的参数进去

2020-03-06 11:11

@dragon688 如果嫌麻烦,用必做这么个脚本,而是为启动脚本建立一个到 /usr/bin 目录的软链接,例如:
ln -s jfinal.sh /usr/bin/jfinal

上面命令中假定了启动脚本是 jfinal.sh, 并假定希望使用 jfinal 命令来启动

在用的时候这样:
jfinal start
jfinal stop

虽然没有制做 service , 但用起来也差不多。比较大的差别是,做成 service 后可以指定重启 linux 时自动启动项目

但这种自动启动的需求在现在使用云服务器的时代已经不重要了,我自己很多跑在 linux 上的项目经常两三年不重启

2020-03-06 11:07

配置 log4j.properties 文件,使用绝对路径,例如:
1:windows 下示例:
log4j.appender.file.File=d:/log/project.log

2:linux 下示例:
log4j.appender.file.File=/var/log/project.log

以上的 log4j.appender.file.File 前缀特指在本站首页下载的 jfinal demo 中的用法,你可以自由定制前缀

2020-03-06 02:13

@zzutligang 删掉 pom.xml 中的那个用于签名的插件,然后执行下面的命令即可将最新版本安装到本地 maven 库:
mvn clean install

编译的话这样:
mvn clean compile

2020-03-05 19:58

jfinal 在线的代码中在前段时间已改为了 2.10.2, 刚刚我又改成了最新版本的 2.10.3

此外,jfinal 并未依赖 jackson, 只是用于编译。所以用户在使用 jfinal 的时候并不会自动引入 jackson 依赖

谢谢反馈

2020-03-05 19:51

@zzutligang 是我看错了,不能获取 ID

2020-03-05 17:37

返回的 int 正好就是

2020-03-05 15:28

这个需求需要在 controller 中通过 类似下面的代码来做:
InputStream in = getRequest().getInputStream();

得到上面的 InputStream in 对象以后,通过一些第三方从里头将文件数据解析出来

注意,这个解析是遵守 http 的 multipart request 规范来做的,不用自己写代码,有现成的第三方支持从 InputStream 中解析,例如:
https://www.oschina.net/p/commons-fileupload

2020-03-04 21:08

如果生成的静态页面只需要在不存在时生成,需要加 if 判断,否则每次访问这个 index() action 时都要生成一次了

当然,如果这个 action 只是作为生成静态文件触发机制是没问题的

还有个改进建议,Template 内有支持 String fileName 与 File file 的方法,所以可以去掉 FileWriter 改为下面的用法:
template.render(null, "xxx.html");

也可以这么用:
template.render(null, new File("xxx.html"));

上面两种方式的优点除了省代码以外,还无需关心 fileWriter.close() 这种处理

谢谢分享

2020-03-04 16:29

@becklu jfinal undertow 下开发有详细的文档:
https://jfinal.com/doc/1-2

2020-03-04 16:28

这个暂时没想好怎么加

2020-03-04 16:27

@jounzhang 现在是目录 + ajax 处理过的,用户体验已经与两年进步很多了