2020-12-14 14:15

这个功能已经有了:
int[] fetchSize = {100};
Db.each( record -> {
这里是业务代码;
return fetchSize[0]-- > 0; // fetchSize 大于 0 时返回 true,将一直循环下去
}, sql);

2020-12-12 00:03

@xiaoye.huang jfinal 源代码中起码就有两处,这里是一处:
https://gitee.com/jfinal/jfinal/blob/master/src/main/java/com/jfinal/template/io/WriterBuffer.java

2020-12-11 20:48

你说的当前登录信息需要 remove ,因为这个对象在下次请求到来的时候,另一个线程无法再使用,否则你的 session 就串了

这是 java 基础,一定要自学好

2020-12-11 20:47

回答是看场景,如果是用 ThreadLocal 实现类似于缓冲区的功能,就不必 remove ,让其生命周期与线程池的 work 线程同样长

如果是为了实现在线程的一个调用流程中共享变量,而这个变量需要及时回收的话,需要用 remove()

2020-12-11 17:12

@NignSah 从来没有碰到过这个问题,你发送的请求是不是很不一样?

用一下排除法,在别人的机器上试一试

曾经就有同学是因为自己的操作系统被损坏,出现过与你类似的问题,修复操作系统的某个文件就搞定了

2020-12-11 15:36

@NignSah 换个方向解决,先通过 getRequest().getParameterNames() 先得到所有参数名,然后再迭代得到所有属性

2020-12-11 14:18

@NignSah 在我这无法重现这个问题, 可能是你的请求出现了某种特征引发的

你测试一下写一个简单的 action 看行不行,例如:
public void test() {
Map map = getParaMap();
renderJson(map);
}

在我这是没有任何问题的

2020-12-11 10:54

handler 是拦截所有 http 请求,而 interceptor 只拦截配置了该拦截器的 action

handler 是无条件拦截器所请求,包括 css、jpg、js 等静态请求。而 interceptor 只拦截 action 请求,无视 css、js 等静态请求

看一下文档中的 jfinal 顶层架构图就明白了

2020-12-11 10:52

@NignSah 这个版本没问题的,天天都在用的

2020-12-10 20:38

jfinal undertow 用的哪一个版本?

此外,请求是不是包含了文件上传,也就是说是不是包含了 type="file" 这个 input 域

2020-12-10 15:48

@hen 我一般是直接用的 Model, 而不用 VO, getter setter 方法已经用生成器生成过了, VO 没有必要了

2020-12-10 15:13

@陈贤一 导入 demo 要注意,一定要当成 maven 项目导入,也就是要走 IDEA 的 maven 项目导入 "向导"

导入后除了修改数据库用户名密码以外,别的啥都不用改

这个 demo 马上快 10 年了,如果有问题,早在 9 年多以前就会被发现并解决,不会有问题的,放心

2020-12-10 12:53

jfinal 项目是标准的 maven 项目,这个肯定是没什么可以说的了

只要你按标准的 maven 项目导入就可以了,出现这样的问题多数是配置不当引起的

2020-12-10 12:14

demo 中的 package.xml 有如下配置:
<formats>
<format>dir</format>
<format>zip</format>
</formats>

2020-12-10 11:45

在 package.xml 中的最上部分,已经有注释明确说明了,如何打包 zip、jar、dir、gz 等等格式

而且可以同时打包多种格式,不要乱改 package.xml 文件