關於官網
千呼萬喚始出來: 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;
}