2020-04-07 23:08

@cccccccc1 @久伴轻尘 @scysyn @ThreeX @xiuj

希望大家客观看待商业化问题, ruoyi 项目或许是允许进行商业化二次开发的

商业化本身并不是问题,人人都要吃饭、生存,凭劳动获取一定的回报是理所应当的

购买方在购买之前肯定是要认为商品有价值才肯购买的,如果对买方有价值,最终促成的多数是双赢的事情

2020-04-07 18:17

在项目的 pom.xml 中自行升级 jedis 的依赖应该可以的,你试一试

2020-04-07 17:30

configConstant 是被很早调用的

2020-04-07 17:30

@zzutligang 这正是要排查的地方, 找到一个最早被调用的地方使用 use 方法,例如在 MyConfig 的 configConstant(Constants me) 中做这事:
public class MyConfig extends JFinalConfig {
public void configConstant(Constants me) {
PropKit.use(...);
...
}

...
}

2020-04-07 16:38

@zzutligang 应该只是一个先后问题,只要 use 一次, 后面一直 get 就可以了

2020-04-07 16:37

@tctc4869 只需关注从数据库取数据, 更新、写入数据不需要扩展

2020-04-07 11:31

@lusy 还真有一个: https://www.oschina.net/p/pkuas+2010

但你未必敢用

2020-04-07 11:25

解决办法是要确保 PropKit.use(...) 被先调用过一次,这里要检查 ab 测试时并发调用的情况是不是导致了 PropKit.get(...) 先于 PropKit.use(...) 调用的情况

2020-04-07 11:24

大概率原因是:某个线程的 PropKit.get(...) 动作在 PropKit.use(...) 之前被调用了

这里的关键是:PropKit.get(...) 一定要在 PropKit.use(...) 被调用过至少一次以后才能使用

2020-04-06 22:10

@tctc4869 扩展这两个组件的实例代码也是现成的:
https://gitee.com/jfinal/jfinal/tree/master/src/main/java/com/jfinal/plugin/activerecord/builder

有两个 ModelBuilder、RecordBuilder 扩展,参考着写即可,假定你扩展出来的叫 MyModelBuilder.java、MyRecordBuilder.java 配置方法如下:
ActiveRecordPlugin arp = new ActiveRecordPlugin(...);
Dialect dialect = new MySqlDialect();

// 下面两行是关键
dialect.setModelBuilder(new MyModelBuilder());
dialect.setRecordBuilder(new MyRecordBuilder());

arp.setDialect(dialect);
me.add(arp);

2020-04-06 16:57

扩展 ModelBuilder、RecordBuilder 就可以了,扩展完以后,通过 Dialect.setModelBuilder/setRecordBulder 方法就可以切换过去了

2020-04-06 12:37

使用百分号 s,例如 log.info("收到来自 %s 的 ws 握手包 %s", "aaa", "bbb");

当然,你也可以使用 slf4j 的用法,但得配置一下:
me.setToSlf4jLogFactory();

2020-04-06 12:35

@杜福忠 字符 ` 在 js 中支持字符串换行?

2020-04-05 21:20

@nmsl 与端口有关的可能性不大,可能是你动了项目什么地方,可能是 Default Output Folder 配置不对:
https://jfinal.com/doc/1-8