Go-Spring 迄今最稳定版本发布了!

撒花!Go-Spring 迄今最稳定版本 v1.0.4 正式发布了!本次更新重点在 Web API 完善和 BeanSelector 实践上面。同时这个版本的 API 绝对稳定,大家可以放心地在生产环境中使用了!详细的更新内容如下:

go-spring-parent

1. SpringError 模块添加 PanicImmediately 函数,增加错误码的默认值,优化 RPC 结果的显示;

2. SpringLogger 模块添加 Print 和 Printf 函数,可适配更多 Logger 接口,线程安全的修改 Logger 的打印级别;

3. 实现更多辅助函数,增加 int 和 string 的 Contains 函数,增加获取函数所在文件及其行数的辅助函数,实现可以 Add 和 Wait Goroutine 的 WaitGroup 封装类,比原生函数更安全的可检测 reflect.Value 是否为 nil 的 IsNil 函数,添加 MD5 和 BASE64 的编码函数,增加 FindInList 函数,性能更好的 LocalIPv4 函数,time.Time 和 time.Duration 转毫秒的辅助函数,等等。

go-spring-web

1. Handler 提升为接口,打印更丰富的路由信息;FilterChain 提升为接口,完美适配 echo 和 gin 的中间件机制;全面统一 echo、gin 以及 {} 路由风格;全面实现 WebServer、WebContainer、Router、Mapper 四个级别的 Filter 机制;

2. WebContainer 增加 ReadTimeout 和 WriteTimeout 配置;BIND 模式支持 WebContext 参数,支持无参和无返回值,RPC 处理函数可定制;增加 gin、echo 与 WebContext 之间的互转函数;

3. 改造 WebServer 流式接口;优化 Swagger 使用;减小 WebContainer 方法集;引入参数校验框架;修复 gin 路由的 BUG;增加 WebContext.SetRequest 函数,等等。

go-spring

该版本最大的特点是引入 BeanSelector (选择器) 和 Bean Tag,进而统一了 GetBean、FindBean 和 CollectBeans 三大函数的关系。其他改动点如下:

1. 解决了 WebServer 重复注册的问题,实现了路由注册时的多端口匹配机制,支持 Receiver 方法注册路由,整合了 Filter 和 Condition 机制,可以更好的打印 URL 注册信息,支持 Server、Container、Router、Mapper 四重级别的过滤器;

2. 支持更多种数组值的绑定,收集模式支持指定 Bean 选择器,扩展 ${} 的语法,当引用类型遇见 ${} 时首先获取对应的属性值,然后使用获取到的属性值当做 tag 进行 Bean 的筛选;

3. 删除非严格模式,删除注入过程中 Bean 排序和堆栈 Watch 功能,删除关闭自动导出功能的函数,删除事件通知函数;

4. 支持 destroy 函数按顺序依次调用,修复 Map 属性值优先返回默认值的 BUG,等等。

想要更多了解 Go-Spring 是如何使用的请下载 https://github.com/go-spring/go-spring-boot-demo 项目。

原文 

https://www.oschina.net/news/116646/go-spring-1-0-4-released

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » Go-Spring 迄今最稳定版本发布了!

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址