本文由 发布,转载请注明出处,如有问题请联系我们! 发布时间: 2021-06-16对标 Spring Boot & Cloud ,轻量框架 Solon 1.5.2 重要发布

加载中

对比 Spring Boot & Cloud ,轻巧架构 Solon 1.5.2 关键公布

Solon 是一个轻巧的Java基本开发框架。注重,抑制 简约 对外开放的标准;务求,更小、更快、更随意的感受。适用:RPC、REST API、MVC、Job、Micro service、WebSocket、Socket 等多种多样开发方式。简短而精简!

Solon Cloud 是一系列的标准接口和配备标准,算作 Solon 的分布式开发模块计划方案。

迅速掌握Solon的原材料:

《Solon 特性简集,相较于 Springboot 有什么区别?》

《Solon Cloud 分布式服务开发套件清单,感觉受与 Spring Cloud 的不同》

《Solon 的想法与架构笔记》

《Solon 生态插件清单》,现阶段现有100好几个绿色生态软件

《Solon 框架入门系列》

《Solon Aop 特色开发系列》

说白了更小:

核心0.1米,最少的接口开发企业0.两米(相比于 Dubbo、Springboot 的依赖包,小到能够乎略不计入)

说白了更快:

该设备http helloworld检测,Qps可以达到十二万之多。可参照:《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.extend.auth solon.auth 影响力升級
solon.extend.data solon.data 影响力升級
solon.extend.validation solon.validation 影响力升級
solon.extend.jetty.jsp solon.boot.jetty.add.jsp 提升与 solon.boot.jetty 关联性
solon.extend.jetty.websocket solon.boot.jetty.add.websocket 提升与 solon.boot.jetty 关联性
solon.extend.undertow.jsp solon.boot.undertow.add.jsp 提升与 solon.boot.undertow 关联性

2、一部分包名调节

原包名 升級为新包名 缘故表明
solon.extend.auth.* solon.auth.* 影响力升級
solon.extend.validation.* solon.validation.* 影响力升級
solon.extend.data.* solon.data.* 影响力升級
solon.core.tran.* solon.data.tran.* 转到 solon.data 统一维护保养
solon.core.cache.* solon.data.cache.* 转到 solon.data 统一维护保养

3、solon.validation 软件其他调节与升級

  • 修改 ValidatorManager,由单例模式改成静态数据方式;并标准接口干了提升
  • 调节 ValidatorManager::onFailure 改名为 ValidatorManager::setFailureHandler
  • 调节 NoRepeatLock 改名为 NoRepeatSubmitChecker(与其他探测器统一为Checker的定义)

4、solon.validation 软件提升实体线认证适用(也可转换为jsr303)

实例:

@Valid
@Mapping("/demo2/valid")
@Controller
public class ValIDController {
    @NoRepeatSubmit
    @Mapping("nrs")
    public String nrs() {
        return "OK";
    }

    @NotBlank({"val1", "val2"})
    @Mapping("nblank")
    public String nblank(String val1, String val2) {
        return "OK";
    }
    @Mapping("bean")
    public String bean(@Validated ValidModel model) {
        return "OK";
    }
}

@Data
public class ValidModel {
    @NotBlank(message = "手机号码不可以为空")
    private String mobile;

    @NotBlank(message = "登陆密码不可以为空")
    private String password;
}

5、solon.auth 软件提升模版标识适用

  • 调节 各模板引擎內部插口名字,看起来更统一些
  • 模版 beetl 提升管理权限验证标识适用
  • 模版 enjoy 提升管理权限验证标识适用
  • 模版 freemarker 提升管理权限验证标识适用
  • 模版 jsp 提升管理权限验证标识适用
  • 模版 thymeleaf 提升管理权限验证标识适用
  • 模版 velocity 提升管理权限验证标识适用

beetl 实例:

<#authPermissions name="user:del">
是我user:del管理权限
</#authPermissions>

<#authRoles name="admin">
是我admin人物角色
</#authRoles>

enjoy 实例:

#authPermissions("user:del")
是我user:del管理权限
#end

#authRoles("admin")
是我admin人物角色
#end

freemarker 实例:

<@authPermissions name="user:del">
是我user:del管理权限
</@authPermissions>

<@authRoles name="admin">
是我admin人物角色
</@authRoles>

6、solon core 的事务管理与缓存文件界定插口迁到:solon.data 软件

  • 挪动 org.noear.solon.core.cache.CacheService 到 org.noear.solon.data.cache.CacheService
  • 挪动 org.noear.solon.core.tran.TranExecutor 到 org.noear.solon.data.tran.TranExecutor
  • 挪动 org.noear.solon.core.tran.TranUtils 到 org.noear.solon.data.tran.TranUtils

7、提升 httputils-solon-plugin 软件

它是根据Solon Cloud 申请注册发觉服务项目的 HttpUtils 专用工具,为Rpc客户端计划方案外给予一个划算的服务项目启用方法。

特别适合k8s和传统式申请注册发觉服务项目等不一样情景。实例:

String rst = HttpUtils.http("helloservice", "/hello").data("name","noer").post();
System.out.println(rst);

8、要求主要参数全自动变换日期的文件格式提升到9种

"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"
"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
"yyyy-MM-dd HH:mm:ss,SSS"
"yyyy-MM-dd HH:mm:ss.SSS"
"yyyyMMddHHmmssSSSZ"
"yyyy-MM-dd'T'HH:mm:ss"
"yyyy-MM-dd HH:mm:ss"
"yyyy-MM-dd"
"HH:mm:ss"

9、其他

  • 修补载入配备时,数值null会错误的难题
  • 升級snack3,提升大量的時间解决文件格式
  • 提升大量的時间解决文件格式(与snack3同)
  • enjoy 方式,分离出来 debug 模块的案例
  • Validator 插口的原函数 validate 改名为 validateOfContext;并提升 validateOfEntity 函数定义(适用实体线认证)
  • solon.extend.jsr303 软件不会再全自动引入到器皿(Solon Validation,已适用实体线认证)

附:新项目详细地址

  • Gitee:https://gitee.com/noear/solon
  • GitHub:https://github.com/noear/solon

附:新手入门实例

  • 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

评论(0条)

刀客源码 游客评论