2023-08-13 18:45
代码质量非常高,已 star + fork
无意中发现个问题,反馈一下:
public class OperLogInterceptor implements Interceptor {
@Override
public void intercept(Invocation ai) {
ai.invoke();
// ACTION执行后记录日志,多线程记录,提升访问性能
new Thread(() -> writeOperLog(ai)).start();
}
....
}
以上在线程中 writeOperLog 会有问题,建议将绝大部分代码不要放在新线程之中,而只是将数据库操作放在独立线程中,因为瓶颈在数据库:
log.save();
此外,每次请求 new Thread(...) 开销会很大,可以用上 jfinal 内置的线程池:
ThreadPoolKit.execute( () -》 writeOperLog(ai));
2023-06-27 20:53
@chcode 这些一直都可以,博主的需求是批量插入数据,获得所有批量数据的主键值,而不是一个
2023-03-02 23:24
@zeroabc 执行 mvn clean package 就可以了,打出的压缩包与可执行的目录在 target 目录下面的以项目名称命令的子目录下面,注意找一下
2023-01-30 22:07
前端的东东不太熟,我们公司用 element ui 做的文件上传直接指定了 action 就行了:
《el-upload
:action="actionUrl"
:headers="headers"
:class="form.businessLicenseFile ? 'hide':''"
list-type="picture-card"
:on-preview="handlePictureCardPreview"
:on-success="handleSuccess"
:on-remove="handleRemove"
accept="image/jpg,image/jpeg,image/png"
:before-upload="beforeUpload"
:file-list="businessLicenseList"
》
注意看上面的 :action="actionUrl"
其中的 actionUrl 数据如下:
export default {
data() {
return {
actionUrl: process.env.VUE_APP_BASE_API + '/system/upload?type=customer',
....
}
}
}