Skip to content

HowardLei/spring-docs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

项目介绍

Go-Spring 的愿景是让 Go 程序员也能用上如 Java Spring 那般威力强大的编程框架,所以正如它的名字昭示的那样 Go-Spring 从 Java Spring 借鉴了大量优秀的开发思想。目前,Spring 家族的两大基础特性 IoC 容器和 Boot 框架均已实现,而 AOP 功能受限于 Go 的语言特性暂时无法实现。Go-Spring 对后端开发中常用的模块进行了封装,这些模块通过 Starter 机制仅仅只需一行代码即可快速使用。

详细特性列表如下:

  1. 支持对象(包括数组、函数、通道等)、构造函数、成员方法三种形式注册 Bean;
  2. 支持对 SpringContext (IoC 容器) 内的 Bean 进行依赖注入和属性绑定;
  3. 支持对用户指定 (IoC 容器外) 的 Bean 进行依赖注入和属性绑定;
  4. 支持 API 形式获取 (GetBean) 和查询 (FindBean) Bean;
  5. 支持自动和指定两种收集模式,指定模式可以对收集到的 Bean 进行排序;
  6. 支持配置函数,配置函数和函数式 Bean 的区别是配置函数不返回 Bean;
  7. 支持从命令行参数、系统环境变量、应用配置文件等多个地方获取配置项;
  8. 支持 Starter 机制和多种 Condition,灵活定义模块的导出 Bean;
  9. 支持 echogin 无缝切换,并且支持原生的 echogin 中间件;