2021-06-25 16:20

解决办法估计得重新生成model

2021-06-25 16:19

mysql-connector-java 8.0.22==>8.0.23+版本后,会出现这问题

2021-05-25 16:41

栏目能自定义url功能?http://www.jpress.io/product/category/plugin http://www.jpress.io/product/category/template 这样的url不简洁

2021-05-23 21:04

最近项目需要优化一下性能,原有项目代码写得较为粗放(一直放任程序员自由实现,只要求程序员用Jfinal把功能实现),现在终于要还账了。说回代码,原有代码基于Jfinal,缓存加入了Redis,session共享也基于undertow扩展了一个类实现了,但用redis缓存那块代码太多的重复代码,if 缓存没有else加入缓存之类的代码,看着这样的代码,脑袋嗡嗡响。

因为前期用jboot实现过一个小的程序,发现Jboot现在文档较为完善,找不到或不太懂的,直接看看源码就明了,更重要的是,Jboot对于Jfinal的扩展做得非常好,完全兼容。@海哥 对于Jboot倾注的心血和勤奋从版本更新的频率就能表现,在此真心赞一个。

因此,这次决定直接集成Jboot进来,有如下几个好处:1,完全兼容原有Jfinal项目,除了增加一个启动类implements JbootAppListener,代码几乎0修改;2,jboot版本更新及时,后续再也不用手动去升级jfinal版本了,特别是其它相关依赖包,且集成功能已经比较完善了;3,缓存等组件的使用更便捷,完全干掉原有使用缓存代码的if else之类的,省掉大量的代码,清爽; 后续会逐步把session共享等功能用起来,干掉现有的同类代码就OK了。

目前还在集成过程中。。。

2021-05-07 20:24

@杜福忠 确实是历史规则不好处理兼容了。海哥这办法算是很好的兼容了。

2021-05-07 16:11

关于这个路径,是否可以考虑稍微优化一下,例如:@ActionKey("/a") 以“/”开头为根开头的绝对路径,即访问路径为:http://jfinal.com/a, 而@ActionKey("a")则为当前controller @Path("/controller") 下的相对路径,即访问路径为:http://jfinal.com/controller/a,这样的规则是否更合理一些?@海哥 @JFinal

2021-03-08 17:44

@海哥 能增加页面总执行时长和自定指令的执行时间么,这样对于调优有一定参考价值,类似输出sql执行时长一样的功能。

2021-03-07 00:37

如果是有 body 体的指令,必须覆写 hasEnd 方法并返回 true; 这个太狠了,没注意指令一直报空指针,死活看不出哪里异常了。终于搞定了。❤

2021-03-05 00:56

👍👍👍👍`.` 必须得带上这前后的`

2021-02-26 17:50

@124653847atqq.com 可以自己实现一个RedisSessionManager实现,原代码不用任何修改。启动中增加一名builder.getDeploymentInfo().setSessionManagerFactory(new RedisSessionManagerFactory());即可搞定。

2021-02-26 16:16


1,新建一个SessionManagerFactory实现


public static class YourSessionManagerFactory implements SessionManagerFactory {
@Override
public SessionManager createSessionManager(Deployment deployment) {
return yoursessionManager;
}
}


2,在UndertowServer启动中配置上去.


UndertowServer.create(Xxx.class).configWeb(builder -> {   
builder.getDeploymentInfo().setSessionManagerFactory(new YourSessionManagerFactory());
}).start();






3,可能遇到的问题,如果session中保存有对象, request.getSession().getAttribute("xxx")转换时出现


java.lang.ClassCastException


的异常,请看看是否是由于ClassLoader不一致造成。常见如下:



com.jfinal.server.undertow.hotswap.HotSwapClassLoader@xaxx000



sun.misc.Launcher$AppClassLoader@9x9ssdf



简单粗暴的解决办法是关掉undertow开发模式,undertow.devMode=false

2021-02-26 14:21

@flash866 应用A,新建linux用户usera,应用A启动目录为/home/usera/app1,执行/home/usera/app1/start.sh启动应用;应用B,新建linux用户userb,应用A启动目录为/home/userb/app2,执行/home/userb/app2/start.sh启动应用;