Solon v2.2.7 发布,支持 Java 8 到 Java 20

Solon 是一个高效的 Java 应用开发框架:更快、更小、更简单。也是一个有自己接口标准规范的开放生态。

150来个生态插件,覆盖各种不同的应用开发场景:

相对于 Spring Boot 和 Spring Cloud 的项目:

  • 启动快 5 ~ 10 倍。 (更快)
  • qps 高 2~ 3 倍。 (更高)
  • 运行时内存节省 1/3 ~ 1/2。 (更少)
  • 打包可以缩小到 1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小)
  • 同时支持 jdk8, jdk11, jdk17, jdk20。

似曾相似的体验,入门更简单,迁移很方便:

@Controller
public class App {
    public static void main(String[] args) {
        Solon.start(App.class, args, app->{
            //手写模式
            app.get("/", ctx -> ctx.outputAsJson("{message:'Hello world!'}"))
        });
    }

    //注解模式
    @Get
    @Socket
    @Mapping("/hello")
    public String hello(String name) {
        return String.format("Hello %s!", name);
    }
}

入门探索视频(用户录制):

《bilibili - solon 入门探索》

本次更新:

  • 增加 @Path 替代 @PathVar(简短些),不过这个注解本身意义不大
  • 增加 ResourceUtil::findResource 接口(ssl.keyStore 改用此接口)
  • 增加 "application.xxx" 配置的弃用警告日志
  • 增加 "solon.config" 多文件与内外文件支持
  • 增加 "solon.config.add"(添加外部) 配置,用于替代 "solon.config"
  • 增加 "solon.config.load"(加载内部) 配置,支持数组配置
  • 增加 Props::getMap 接口,替代 Props::getXmap
  • 调整 file-s3-solon-cloud-plugin 插件, "file.default"改为动态获取,增加bucket接口
  • 调整 maven 版本管理,由 ${xxx.ver} 改为 $
  • 优化 请求参数 required 的提示
  • 优化 Props::getProp 减少 forEach 次数
  • 修复 solon.scheduling.simple 插件,在启动卡时后不能运行 cron=* * * * * ?
  • 修复 AopContext::ProxyComponent 不能被 copyto 的问题
  • sqltoy 升为 5.2.41
  • wood 升为 1.0.9
  • snack3 升为 3.2.62
  • hutool 升为 5.8.16
  • liteflow 升为 2.10.1

项目仓库:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章