jfinal undertow 项目在公司内部试用两个月,在俱乐部内测一个月,在 2018-12-12 号才放出 jfinal undertow 1.3 版本,这个版本已经十分完善好用
jfinal underow 1.4 针对自 1.3 发布以来的一些重要反馈进行了升级,具体升级内容如下:
1、改进 session 热加载
jfinal 俱乐部有位同学在使用过程中发现存放在 session 中的 model 对象在读取时会碰到类型转换异常,jfinal undertow 1.4 已完美解决该问题
2、支持 URL 中携带特殊字符
同样是 jfinal 俱乐部有位同学发现问号挂参时,如果其中有 '{'、'}' 这类字符时无法被支持,jfinal undertow 1.4 默认为 undertow 添加一个配置解决该问题
3、Undertow.config 支持更多配置
jpress、jboot 作者 @海哥 发现 config 方法中配置 setDevMode(...) 出现时机不对的问题,jfinal undertow 1.4 将 configConsumer.config(...) 提前解决问题。老版本只是在使用 lambda 配置devMode 时会碰到这个问题
4、改进 http 重定向到 https
老版本使用的重定向状态码为 301,从而在去掉 https 功能后无法访问 http,需要清除浏览器缓存才可以使用。
301 重定向会让浏览器缓存,对开发造成不变,所以 jfinal undertow 1.4 将重定向状态码默认改为 302,将不会引发缓存,可以通过如下配置来改变配置:
# ssl 开启时,http 请求跳转到 https 使用的状态码,默认值 302 undertow.http.toHttpsStatusCode=302
5、部分启动信息链接化
启动时相关输出信息添加 "http://" 与 "https://", 便于 IDEA 在控制台点击该链接打开浏览器,优化开发体验
6、重构 UndertowConfig
抽取 createPropExt(...) 方法,减少冗余代码
7、PropExt 添加构造方法
PropExt 添加一个带 Properties 的构造方法,便于扩展使用
jfinal undertow 在公司内部应用的这三个月,部署速度大大加快,免去了 tomcat 的下载与配置,节省了不少时间。jfinal undertow 不仅稳定可靠,而且 CPU 与内存占用率更低,可以彻底告别 tomcat、jetty 了。
最后,jfinal undertow 1.4 已经发布到 maven 中心库,现在就可以使用。jfinal club 1.8 中也相应做了更新,俱乐部小伙伴可以下载