2025-04-28 22:11

#@_paginate()是自定义的吗? 找到定义的模板函数位置,看下有参数可配置没有。

官网有#pageList() pageSize参数
http://doc.jpress.cn/development/template/template_command.html#page-%E7%9A%84%E4%BD%BF%E7%94%A8

2025-04-28 13:06

@canca 不影响,我们线上也有 Tomcat 项目,日志应该是让运维关了。开发时会提示忽略就行

2025-04-27 18:51

是缓存设计,JF系统中常见与TimeKit、Aop、FastControllerFactory、 JFinalJsonKit、template 等等模块中

2025-04-19 17:51

@liugz 注意 getDruidDataSource() 需要在 start 之后,之前还没创建对象

2025-04-19 16:26

你可能是需要setTimeBetweenConnectErrorMillis 这个方法(配置发生错误时多久重连)。

PS:如果需要的 set 方法DruidPlugin没有实现时,可以自行调用DruidDataSource ds 对象。
示例代码:
DruidPlugin dp = new DruidPlugin(url, name, pwd){
@Override
public boolean start() {
if (super.start()){
this.ds.setConnectionErrorRetryAttempts(10);//控制连接失败重试次数
this.ds.setBreakAfterAcquireFailure(true);//失败后终止重试
this.ds.setMaxWait(1000 * 10);//10秒超时
}
return true;
}
};

补充:
还可以DruidPlugin addFilter加监控 累计错误次数,然后做相应的处理,比如关闭DruidPlugin,通知负责人之类的业务。

或者增加自定义任务器,定期检查数据库的健康情况,长期不访问的租户做关闭连接池操作,下次访问时再启动即可(如果配置不对自然也启动不了)

2025-04-17 21:27

@zzutligang 禁用autoType 你测试后反馈一下社区里,我没做过测试

2025-04-17 13:58

如果 configConstant 配置了me.setResolveJsonRequest(true)是会触发JsonRequest的。fastjson禁用AutoType功能后也是没问题的(我没测试过)。

我们之前给某Y 做的系统就是有源码扫描,直接匹配源码的。我们是直接拿掉了fastjson改为了HuToolJson,虽然fastjson好用性能强,不过系统的瓶颈也不在这里,其他 json 工具也是够用了。

如果你项目没有用到fastjson的骚用法,可以直接上fastjson2,没啥影响

2025-04-15 23:48

可以使用分布式锁来处理。
任务不多的情况下,可以使用数据库行锁来解决。任务一般都有任务表,每个任务上面增加一个锁状态,谁 update 修改成功就谁执行。
任务量大的情况下,可以用Redis 锁来处理。

或者把任务业务单拆出去,独立JVM来运行处理。

2025-04-15 11:39

@北流家园网 _MappingKit 可以把字段映射拆分出来,让其调用另一个 Java 类,可在_MappingKit 保持干净只映射表关系,字段映射调用另一个类即可。 mapping_kit_template.jf 随便改造嘛

2025-04-15 11:36

@北流家园网 表越多,越应该使用这个 模式,因为映射关系在生成_MappingKit 时已经提前Java代码级配置好了。 在 JF 启动时,直接代码运行映射关系。加载速度和数据库查询后映射关系,性能完全不能比不在一个维度。

2025-04-15 09:46

@sbw Redis.use().subscribeThread 上面文章里有示例代码。文档需要仔细读呀,不然以后的编程生涯处处是坑

2025-04-14 17:22

我之前分享的https://jfinal.com/share/2768
可以绕过启动 JF 时扫表信息,提速非常明显,300张表映射时间降至1毫秒加载

2025-04-14 17:17

@sbw 那就调用不阻塞的.subscribeThread 方法注册了(里面有新启一个线程)

2025-04-09 10:17

@isddoidnoi 是的,默认就可以访问静态资源。 建议上传文件时对文件进行 uuid 重命名处理,避免中文和特殊字符导致的 链接不可用。 并且上线后使用 nginx 对静态资源进行代理,性能更好。

2025-04-09 10:02

静态资源默认是可以访问的,无需添加StaticHandler(我记得JF也没有这个类)。
如果你业务需要屏蔽可以增加自定义Handler 进行拦截。或者把upload 目录指向项目 webroot 目录之外。

“文件夹的图片地址转化为URl链接”,这个意思是获取 webapp/upload 里面全部的图片。然后拼接为 url ?
可以简单使用就是 new File("webapp/upload").list(),然后截取项目目录路径,再组织 list 集合返回就行。如果有多级目录就用递归调用拼接就行。