Solon 1.6.25 发布,轻量级应用开发框架

关于官网

千呼万唤始出来: https://solon.noear.org 。整了一个月多了。。。还得不断接着整!

关于 Solon

Solon 是一个轻量级应用开发框架。支持 Web、Data、Job、Remoting、Cloud 等任何开发场景。短小而精悍!

  • 强调,克制 + 简洁 + 开放的原则
  • 力求,更小、更快、更自由的体验

目前已有近130个生态插件,含盖了日常开发的各种需求。

关于 Solon Cloud

Solon Cloud 定义了一系列分布式开发的接口标准和配置规范,相当于DDD模式里的防腐层概念。是 Solon 的微服务架构模式开发解决方案。

本次主要更新

  • 插件 solon.boot.smarthttp,升级 smart-http 到 1.1.11
  • 插件 solon.socketd.client.smartsocket,升级 smart-socket 到 1.5.15
  • 添加 SolonApp::pluginPop 接口

示例

public class DemoApp {
    public static void main(String[] args) {
        SolonApp app = Solon.start(DemoApp.class, args);

        //动态插入插件
        app.plug(new PluginImpl()); 

        //动态拨出插件
        PluginEntity tmp = app.pluginPop(PluginImpl.class);
        if(tmp != null) {
            //停掉插件
            tmp.prestop();
            tmp.stop();
        }
    }
}
  • 调整 solon.schedule 调度策略
  • 调整 water job 的 name 处理
  • 调整 @CacheRemove key 为 keys
  • 调整 @Param 的作用范围,只能作用于参数
  • 新增 @Header 以支持头变量注入

示例

@Controller
public class DemoController{
    @Mapping("hello")
    public void hello(@Header("Token") String token){
    
    }
}
  • 新增 @PathVar 以方便文档框架识别
  • 新增 配置对复杂结构类的支持

配置

jap:
  issuer: test
  japConfig:
    sso: true
    ssoConfig:
      cookieDomain: https://lab.test.cn
  simpleConfig:
    credentialEncryptSalt: xxxxx
  credentials:
    gitee:
      clientId: aaaaaaaaaa
      clientSecret: bbbbbbbbbb
      redirectUri: http://127.0.0.1:8443/social/login/gitee
  callbacks:
    - /

注入到复杂结构

@Inject("${jap}")
@Configuration
public class DemoConfig{
    public String issuer;
    public JapConfig japConfig;
    public List<String> callbacks;
}

快速了解 Solon

项目地址

posted @ 2022-02-23 20:31  手上写着代码  阅读(250)  评论(0编辑  收藏  举报