2021-12-16 15:43
@chcode 确实有这个问题,如果项目里面没有做限制的话(我们表单录入数据时限制了单双引号)。你这里就得转义一下了,或者增加一个模板公共函数方便使用。我增加一个说明,防止后面有人也坑到
2021-12-16 10:03
@jfinal爱好者22 先启动RedisPlugin
https://jfinal.com/doc/8-2
再放入:
ApiConfigKit.setAccessTokenCache(new RedisAccessTokenCache());
https://gitee.com/jfinal/jfinal-weixin/wikis/AccessTokenApi
2021-12-15 14:18
public static List getKeys(String cacheName) {
return new ArrayList(asMap(cacheName).keySet());
}
@山东小木 老师反馈我getKeys这里写错了,确实之前写成了返回值集合了,getKeys应该是返回键集合的,这里更新一下,如果有社友用到的话记得处理一下哈
2021-12-13 21:17
@北流家园网 我没有用HBuilder,用的HBuilderX,是有Enjoy指令语法提示 https://jfinal.com/share/1607
2021-12-09 18:37
如果是我说的这个逻辑,
那么可以自建一个MyDbPro
https://jfinal.com/share/2399
然后覆写里面的findFirstByCache系列方法,
里面代码返回时转调一下这个方法就可以:
public static <T>T toRecord(Object parse){
if (parse instanceof Map){
Record record = new Record();
com.jfinal.plugin.activerecord.CPI.setColumnsMap(record, (Map)parse);
return (T) record;
}else if (parse instanceof List){
List array = (List) parse;
for (int i = 0; i < array.size(); i++) {
array.set(i, toRecord(array.get(i)));
}
return (T) array;
}
return (T) parse;
}
如果不是为了跨语言编写项目,感觉用Jackson序列化不划算了。
这里再说一下,String s = JFinalJson.getJson().toJson(record);
toJson时一定要用JFinalJson
2021-12-09 10:02
@袁小猴 我明白了,你的逻辑是这样的:
findFirstByCache 》数据库查询 并 set 缓存
ICache》自定义
Jackson》转json字符串
Redis》Jedis对象set字符串存储
二次查询时:
findFirstByCache 》数据库查询 并 get 缓存
ICache》自定义
Redis》Jedis对象get字符串
Jackson》json字符串转Record
原因是Record不是传统javaBean也不是Map,那处理就比较简单了,
1是先字符串转成对象之后再转Record即可。
2是Record支持这些JSON工具set值即可。
稍后我写个demo
2021-12-07 14:44
@zzutligang 你用的
#Generated by Maven
#Sat Apr 11 16:16:56 CST 2020
version=2020.4
groupId=com.jfinal
artifactId=cos
2020.4这个波总出的版本吧?我也是这个版本,正常