2022-05-10 18:28
@lshz EQ("eq") NE("ne") 这些不是 jfinal 中的功能,是你的项目自己针对数据库封装了一些功能,看上去是用于辅助生成 sql 的,调试一下程序,很容易理解
这种用法很常见,最近我也在用类似的东东
2022-05-06 22:45
@happyboy 为啥不先配置一下,然后就不必转来转去了:
SerializeConfig.getGlobalInstance().put(Record.class, new FastJsonRecordSerializer());
2022-05-06 12:13
估计你是用了 fastjson 转换,fastjson 只认 getter 方法,所以会调用 record 里头的 getColumns() 方法来转换
解决办法是加配置:
SerializeConfig.getGlobalInstance().put(Record.class, new FastJsonRecordSerializer());
此外,还要创建一个类来支持:
/**
* FastJsonRecordSerializer 支持序列化 activerecord 的 Record 类型
*/
public class FastJsonRecordSerializer implements ObjectSerializer {
public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
if (object != null) {
Record record = (Record)object;
serializer.write(record.getColumns());
}
}
}
2022-05-05 23:24
@finzmb61495 一是没有时间,二是鼓励大家都用 maven 管理依赖
这周末如果有时间我会针对 5.0.0 最后发布一次 .zip 文件,以后就不再会有了
2022-05-04 15:41
@北流家园网 enjoy 是极简设计,以及采用了独创的词法分析、语法分析算法。添加这个功能,总共也就 30 行代码的事
换成是其它模板引擎,动了操作符,可是不小的工作量,我在以前的博客中有过说明,传统模板引擎需要按下面的方式来做:
1: 修改语法、词法涉及的规则 .g4 描述文件
2: 运行 antlr 的生成器,重新生成 Parser、Lexer
3: 开始写自己的代码
但 enjoy 完全不需要,想深入研究的可以看我的博客:
https://my.oschina.net/jfinal/blog/3146036
2022-04-21 22:43
jfinal 4.9.23 的 #para 指令新增了对 like 的支持,map 传参用法如下:
select * from t where title like #para(title, "like")
Java 代码如下:
Db.template(sqlKey, Kv.of("title", "article title here").find();
int 传参用法如下:
select * from t where title like #para(0, "like")
Java 代码如下:
Db.template(sqlKey, "title 参数值").find();
#para 指令还支持另外两种模式:
#para(xxx, "%like")
#para(xxx, "%like%")
此外还支持 in 参数:
select * from t where id in #para(idList, "in")
java 代码如下:
List idList = service.getIdList();
Db.template(sqlKey, Kv.of("idList", idList).find();
最终一个 #para 实现了三种传参方式:传统 + like + in
2022-04-19 21:07
@北流家园网 #(o.ename??) 在 o 不为 null 的时候,不需要??操作符,不会抛异常
a.b.c.d.e 这种表达式的最后一级允许 e 为null,但前面的几级不允许,但是多级可以只需要一个 ?? 操作符,例如:
a.b.c.d.e ??
原因之一是为了减少出开发者手误的概率,还有一些别的原因,有点不记得了,当时是有一些别的考虑,好像有性能的考虑,不太记得了
2022-04-05 21:54
@山东小木 红色的有点刺表我调成了这个色:D55FDE。该色与 One Dark Them 的java 关键字使用的是同一个颜色
除了 D55FDE 你还可以试试这几个色:
E5C07B 黄色,不太显眼
D19A66 黄色,不太显眼
E06C75 淡红,一般般
EF596F 太红
FF6347 更红,最开始使用的
2022-04-05 20:30
@zhenquande 没错没错,就是这么玩的,我一般打开两到三个 vscode
现在玩 idea 也是同样的方式 文件 =》 打开。如果以前打开过,就直接 文件 =》 打开最近的文件