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;
}