2024-01-31 20:05

静态常量:
private static final Log log = Log.getLog(MyController.class);
private static final Log log = Log.getLog(MyService.class);
是说的这个? log.info,log.warn error debug

2024-01-31 19:57

JF 默认优先探测 log4j,没有时再使用JdkLog。

我推荐 Slf4jLog + Log4j2 这样一个组合,(注意是Log4j2,不是log4j)
slf4j日志门面, 数据库连接池 一般有用到它,所以本来也要加的。
log4j2有实现slf4j它,并且Office文档工具poi 有用到它,项目导入导出Excel一般是标配功能了,所以本来也要加的。

2024-01-27 11:47

我是放在 Java 这边处理的:https://jfinal.com/share/2708

2024-01-15 09:34

让前端把参数挂在url上,比如/abc/xxx?a=A&b=B,或者挂在header请求头部中。这样JF后台可以先获取到参数,再解析文件流

2023-11-23 11:57

我们有个小工具测试服用的,一个JVM里管理多个UndertowServer生命周期。大致就是ServerAppClassLoader extends URLClassLoader 隔离com.jfinal.server.undertow.UndertowServer类与项目依赖jar,然后有个JF子项目可以UI管理这些app可上传覆盖、开机关机重启等操作。使用上很像一个Tomcat管理多个项目的逻辑。主要就测试服上用,前端组调用jfinal-undertow开发的接口,正式服项目都是独立单独部署的

2023-09-21 13:38

DruidPlugin dp = new DruidPlugin("jdbc:sqlite:db/acc.db", null, null);
dp.set(1, 1, 1);//并发必须1
dp.setDriverClass("org.sqlite.JDBC");

ActiveRecordPlugin arp = new ActiveRecordPlugin(dp);
arp.setDialect(new Sqlite3Dialect());

dp.start();
arp.start();

//------------初始化表结构------------------

Db.update( """
CREATE TABLE IF NOT EXISTS ta (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
aid INT NOT NULL,
bid INT NOT NULL,
cid INT NOT NULL
)
""");
Db.save("ta", new Record().set("aid",2).set("bid",1).set("cid",1));

List<Record> list = Db.findAll("ta");
System.out.println(list);

//--------------重新映射Model关系---------------------

arp.stop();
arp.addMapping("ta","aid", Ta.class);
arp.start();
new Ta().set("aid",2).set("bid",1).set("cid",1).save();

List<Ta> all = Ta.dao.findAll();
System.out.println(all);

dp.stop();

2023-09-21 13:25

@xinyin025 我gitee拉取下来,sqlite-jdbc改为3.7.2 运行正常

2023-09-21 01:00

dp对象增加两行代码 :
dp.set(1, 1, 1);//并发必须1
dp.setDriverClass("org.sqlite.JDBC");

确保pom.xml中有加依赖:
<dependency>
<!-- sqlite-jdbc-->
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.7.2</version>
</dependency>

2023-09-20 21:21

@JFinal 不着急,新项目开发中,用的17。看21发布了,想着直接升21也没关系。本地去除Compiler.class后,运行正常~

2023-09-06 10:52

@zzutligang 1K也不算大,你上面业务对象也不大,就算循环了,并发不大的情况下也可以正常渲染JSON,内存可以算出来的。虽然是业务问题,但JF已经考虑到了

2023-09-06 10:43

@zzutligang 防止业务死循环,上面对象套对象,如果有两个相互是对方父级,那么转JSON字符串的时候就相互调用了,JVM就GG了