2022-03-27 15:48

”重写“不是这样重写的,你这个操作叫替换,
并且undertow发布时,项目代码全部打包为jar了,
这样jfinal-undertow生产模式的ClassLoader加载器加载时就没有先后顺序了,
对业务jar一视同仁,你项目代码的jar 和 jf的jar 该类会冲突。
其次 jfinal 的Cache 也没有 setexStr 吧?以前有?

正常应该是:
public class MyCache extends com.jfinal.plugin.redis.Cache {
@Override
public String setex(Object key, int seconds, Object value) {
return xxx;
}
xxxx
}
直接启动设置:
Cache cache = new MyCache(cacheName, jedisPool, serializer, keyNamingPolicy);
Redis.addCache(cache);

或者用RedisPlugin启动设置:
new RedisPlugin(xxx){
@Override
public boolean start() {
复制RedisPlugin里面的start代码过来
Cache cache = new MyCache(this.cacheName, jedisPool, this.serializer, this.keyNamingPolicy);
Redis.addCache(cache);
return true;
}
};

业务中使用:
MyCache cache = (MyCache)Redis.use();
cache.xxx 可以调用自己定义的方法,JF的Cache没有定义得方法都可以调用了

2022-03-23 20:35

很赞,用起来应该很方便。有个地方没看懂,就是那个
static MultipartFormData md
按说Request对象是该次请求的对象,但是如果声明为static的话,那么并发之下,
if(null==md){ 这个if就很迷糊了。
所以是不是多写了一个static声明啊?

2022-03-14 08:51

代理模式
集群架构的本地盘实例默认采用代理(proxy)模式,支持通过一个统一的连接地址(域名)访问Redis集群,客户端的请求通过代理服务器转发到各数据分片,代理服务器、数据分片和配置服务器均不提供单独的连接地址,降低了应用开发难度和代码复杂度。代理模式的服务架构图和组件说明如下。
https://help.aliyun.com/document_detail/99977.html

2022-03-11 16:53

@chcode 妙哇!解决各种特殊符号,我把代码贴上去

2022-03-09 10:39

我没试验,网友说是:
PropertyConfigurator.configure(各种参数)

2022-03-03 14:37

Header好,都没想到用这个,收藏收藏

2022-03-03 14:19

@happyboy 没啥爱好,工作累了休息一下就逛下几个社区放松一下

2022-03-03 10:30

@zzutligang 昂,是HTML啊,看茬了,那用 axios 发起请求就可以了,还是自己封装一下,里面随便切换请求工具:
https://www.runoob.com/vue3/vue3-ajax-axios.html

2022-03-02 19:50

我一般是封装ajax请求为一个httpKit工具,业务统一使用httpKit发起请求。
然后httpKit里面判断返回码,
如果code==0就是正常,回调给业务data,
如果code==301就js重定向data为url,
如果code==XXXX内部全局码,做相应的处理,比如1XXX为系统码,2XXX为某模块的码,
未知错误就判断是否有错误回调对象,否则弹窗提醒msg,
后端是renderJson(Kv.by("code", 0).set("data", xxx).set("msg", xxx));
推荐使用Ret

2022-03-02 10:08

@JFinal 昂,明白了,还以为只是为了性能优化了,修改一下帖子

2022-03-01 14:18

第四个:当前业务用不上那些生态,想用也是“拿来吧你~”,JF当前java里成本是最低的

2022-02-28 17:42

https://jfinal.com/doc/5-14
new ActiveRecordPlugin("这个值", dsMysql)
Db.use("这个值").find(XXX

如果他是第一个启动的ActiveRecordPlugin插件,
那么Db.use() 这个主配置的name就是 "这个值" ,不是"main"了。

PS代码:
/**
* Replace the main config if current config name is MAIN_CONFIG_NAME
*/
if (MAIN_CONFIG_NAME.equals(config.getName())) {
DbKit.config = config;
Db.init(DbKit.config.getName());
}

/**
* The configName may not be MAIN_CONFIG_NAME,
* the main config have to set the first comming Config if it is null
*/
if (DbKit.config == null) {
DbKit.config = config;
Db.init(DbKit.config.getName());
}

2022-02-23 19:23

看看controller里面是不是 Log 类导入错了,要用jfinal的log类