2017-05-25 14:21

@要输就输给追求 新版本的 cos 不仅可以支持 input 的 name 重复,而且支持上传的文件是有序的,而且在上传文件长度超过范围时抛出 ExceededSizeException,便于应用程序中捕获处理

2017-05-25 14:19

@要输就输给追求 这个不需要在 jfinal 3.1 中解决,而是要在 cos 这个第三方中解决,刚刚已经更新了这个 cos 第三方,并上传到了 maven 中心库,maven 升级方式:
groupId:com.jfinal
artifactId:cos
version:2017.5

2017-05-24 22:39

jfinal 仅仅只是将 sql 与其参数扔给 JDBC,理论上来说只要 JDBC 很快,那么查询一定很快

2017-05-24 22:39

单步调试进入 paginate 方法,看哪一行代码明显慢了,即可立即找到原因

据推测是 sql 本来就慢了,你在控制台执行的 sql 很可能与 java 代码中的 sql 有很微妙的差别,例如:where 中使用的条件次序不同,造成没有用上索引

2017-05-24 22:35

生产环境 nginx 已然是标配,在 nginx 的配置文件中直接屏蔽对模板目录的访问即可

如果一定要自行屏蔽,可以使用 jfinal 的 Handler,代码大致如下:
public void handle(target , req, resp, isHandled) {
if (target.endsWith(".html")) {
HandlerKit.renderError404(req, resp, isHandled);
return;
}
next.handle(target, req, resp, isHandled);
}

2017-05-24 22:30

浏览器地址栏里直接请求的 "login.jsp" 文件,那么要确保 jetty 添加了对 jsp 支持的 jar 包,因为 jetty 是模块化的,不一定对 jsp 有支持

直接对 jsp 请求,已然绕开了 jfinal,所以这个问题本质上是与 jfinal 无关的

2017-05-24 22:28

上传文件的 File 对象,可以通过 UploadFile.getFile() 直接获取到,不需要再 new 一次 File

感谢分享

2017-05-24 22:26

weblogic 下使用 jfinal + velocity 的情况不多见,能否在搞定以后,分享一下这个问题的解决方案,我本地没有 weblogic 环境

2017-05-24 22:23

用一下 HttpKit.get(...) 与 HttpKit.post(...),如果你说的远程调用是 RPC,那么 jfinal 未提供这种支持,用一下第三方就好

2017-05-24 15:18

在首页可以下载 jfinal 3.1 all 这个 zip 文件,里面对所有包的使用都有说明

连接池可以换,而且可以直接传入 DataSource 给 ActiveRecordPlugin

2017-05-24 15:16

渲染可以理解为以模板文件 + 数据为基础,生成界面内容用于显示给用户,你可以简单理解为向客户端响应不同类型、不同格式的数据就好,例如:有可能是 html 格式、有可能是图片格式,有可能是 json 格式

freemarker、velocity 是流行很多年的模板引擎,jfinal 手册中提供了 jfinal template 的文档。

2017-05-24 12:23

在 jfinal 中使用任何第三方,本质上都不需要有个集成的动作,直接用就好。

很久没有用过 quartz 了,无法给到具体的建议,建议你直接拿着 quartz 官方文档直接用就行

2017-05-24 12:19

@IvyHelen 开发这个插件的时候,当时并不知道 password 与 database 都支持 null值,只能确定这两个参数可以不传递,站在 jfinal 的角度,如果某个参数可以不传递,最好还是认为 redis 内部是有默认值去处理,而如果 jfinal 允许 null 值,可能会覆盖掉 redis 内部的默认值

你可以当成是一种防御性编程习惯,刚刚已经将 RedisPlugin 中所有属性改为 protected 了,后续版本便于大家继承并扩展自己需要的构造方法

目前的情况下,建议通过建议继承 RedisPlugin 并 copy 一下 start() stop() 这两个方法中的代码来实现,再自建一个满足自己需求的构造方法

2017-05-24 12:06

采用下面的配置:
groupId:com.jfinal
artifactId:jetty-server
version:8.1.8
scope:IDEA 下设置为 compile,ecipse 下可以设置为 provided

采用 JFinal.start("src/main/webapp", 8080, "/") 这种方式启动时,是使用的 jfinal 整合的 jetty 来启动的,对于版本有要求,高版本的 jetty 连包名都改变了

2017-05-24 11:32

@LiJunv5 建议关注一下 jfinal 官方推出的模板引擎,在手册中有介绍,在首页可以下载 jfinal demo,里面有例子,感谢支持社区