Solon 是一個輕量的Java基礎開發框架。強調,克制 + 簡潔 + 開放的原則;力求,更小、更快、更自由的體驗。支持:RPC、REST API、MVC、Job、Micro service、WebSocket、Socket 等多種開發模式。短小而精悍!
Solon Cloud 是一系列的接口標准和配置規范,算是 Solon 的分布式開發套件方案。
快速了解Solon的材料:
《Solon 特性簡集,相較於 Springboot 有什么區別?》
《Solon Cloud 分布式服務開發套件清單,感覺受與 Spring Cloud 的不同》
所謂更小:
內核0.1m,最小的接口開發單位0.2m(相較於 Dubbo、Springboot 的依賴包,小到可以乎略不計)
所謂更快:
本機http helloworld測試,Qps可達12萬之多。可參考:《helloworld_wrk_test》
所謂更自由:(代碼操控自由)
// 除了注解模式之外,還可以按需手動
//
//手動獲取配置(Props 為 Properties 增強版)
Props db = Solon.cfg().getProp("db");
//手動獲取容器里的Bean
UserService userService = Aop.get(UserService.class);
//手動監聽http post請求
Solon.global().post("/user/update", x-> userService.updateById(x.paramMap()));
//手動添加個RPC服務
Solon.global().add("/rpc/", HelloService.class, true);
//手動獲取一個RPC服務消費端
HelloService helloService = Nami.builder().create(HelloService.class);
//手動為容器添加組件
Aop.wrapAndPut(DemoService.class);
本次版本主要變化:
1、增加 solon.i18n 插件
- 使用國際化工具,獲取默認消息
@Controller
public class DemoController {
@Mapping("/demo/")
public String demo(Context ctx) {
return I18nUtil.getMessage(ctx, "login.title");
}
}
- 使用注解,為視圖模板提供支持
@I18n("i18n.login")
@Controller
public class LoginController {
@Mapping("/login/")
public ModelAndView login() {
return new ModelAndView("login.ftl");
}
}
在各種模板里的使用方式:
beetl::
i18n::${i18n["login.title"]}
i18n::${@i18n.get("login.title")}
i18n::${@i18n.getAndFormat("login.title",12,"a")}
enjoy::
i18n::#(i18n.get("login.title"))
i18n::#(i18n.getAndFormat("login.title",12,"a"))
freemarker::
i18n::${i18n["login.title"]}
i18n::${i18n.get("login.title")}
i18n::${i18n.getAndFormat("login.title",12,"a")}
thymeleaf::
i18n::<span th:text='${i18n.get("login.title")}'></span>
i18n::<span th:text='${i18n.getAndFormat("login.title",12,"a")}'></span>
velocity::
i18n::${i18n["login.title"]}
i18n::${i18n.get("login.title")}
i18n::${i18n.getAndFormat("login.title",12,"a")}
2、發布新的家簇圖譜
附:項目地址
附:入門示例
- Solon 入門教程示例:https://gitee.com/noear/solon_demo
- Solon Api 入門教程示例:https://gitee.com/noear/solon_api_demo
- Solon Rpc 入門教程示例:https://gitee.com/noear/solon_rpc_demo
- Solon Auth 入門教程示例:https://gitee.com/noear/solon_auth_demo
- Solon Cloud 入門教程示例:https://gitee.com/noear/solon_cloud_demo
- Solon 進階教程示例:https://gitee.com/noear/solon_advance_demo