go-spring 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
go-spring 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
go-spring 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache
开发语言 Google Go SHELL
操作系统 跨平台
软件类型 开源软件
所属分类 Web应用开发Web框架
开源组织
地区 国产
投 递 者 梁欢
适用人群 未知
收录时间 2019-10-28

软件简介

Go-Spring 是模仿 Java Spring 全家桶实现的一套 GoLang 应用程序框架。 Go-Spring 的目标是让 GoLang 程序员也能用上如 Java Spring 那般威力强大的编程框架。

特性:

  1. 提供完善的 IoC 容器,支持依赖注入、属性绑定;
  2. 提供强大的启动器框架,支持自动装配、开箱即用;
  3. 提供常见组件的抽象层,支持灵活地替换底层实现;

入门指南

Go-Spring 当前使用 Go1.12 进行开发,使用 Go Modules 进行依赖管理。

package main

import (
	"github.com/go-spring/spring-boot"
	_ "github.com/go-spring/starter-echo"
)

func init() {
	SpringBoot.RegisterBean(new(Echo)).Init(func(e *Echo) {
		SpringBoot.GetBinding("/", e.Call)
	})
}

type Echo struct {
	GoPath string `value:"${GOPATH}"`
}

func (e *Echo) Call() string {
	return e.GoPath
}

func main() {
	SpringBoot.RunApplication()
}

更多示例请见文档。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(9) 发布并加入讨论🔥
发表了资讯
2022/09/13 13:31

一站式开发框架 Go-Spring 发布 v1.1.2 版本

距离上次发版仅两周的时间,Go 后端一站式开发框架 Go-Spring 又发布了新的版本,新版本实现了两个非常重要的特性:动态配置和 Bean 共享。 动态配置 有时候我们想要在不停机的情况下可以修改程序的配置,更改程序的行为,即所谓的“动态配置”。Go-Spring 通过使用专门的数据类型实现了和普通属性一样的使用方式,既支持默认值,也支持类型校验,同时还保证了数据的并发安全,非常简单且强大。 type DynamicConfig struct { ...

0
2
发表了资讯
2022/08/27 11:10

一站式 Go 开发框架 Go-Spring 正式发布 v1.1.1 版本

在经历了一年半的折腾后,go-spring v1.1.1 终于发布了,这是一个全面重构的版本,更加符合 go 语言的开发习惯。 它是一个全新的版本,命名更加符合 go 规范,模块划分更加合理,核心设计也更加简洁; 它是一个具有重大突破的版本,突破性的支持统一日志框架,突破性的支持流量录制和回放; 它是一个功能庞大的版本,涵盖了日常开发所需的方方面面,再也不用纠结使用哪个依赖包。 1. 新版本 log 模块全面遵循 log4j2 的架构,具...

58
7
发表了资讯
2022/05/04 11:25

一站式开发框架 Go-Spring v1.1.0-rc4 发布

距离上次发版已经三个月了,本次发布的版本应该是 v1.1.0 正式版之前的最后一个 RC 版本。 Go-Spring 的愿景是让 Go 程序员也能用上如 Java Spring 那般威力强大的编程框架。 提供了完善的 IoC 容器,支持依赖注入、属性绑定; 提供了强大的启动器框架,支持自动装配、开箱即用; 提供了常见组件的抽象层,支持灵活地替换底层实现; 3.1 抽象 web 框架,echo 和 gin 可以灵活替换。 3.2 抽象 redis 框架,redigo 和 go-redis 可...

2
5
发表了资讯
2021/11/16 07:47

Go-Spring 发布 v1.1.0-rc2 版本

前言 Go 语言以简单著称,一个很明显的例子就是只需要很少的代码即可实现一个最小的 Web API 。Go-Spring 融合了 Go 简单和 Spring 自动配置的优点。本文通过几个实现最小 Web API 的示例展示 Go-Spring 的简单和强大。 To Gopher 下面是使用 Go 标准库实现的 Hello World! 程序。代码真的很少! package main import ( "net/http") func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { ...

12
4
发表了资讯
2020/10/11 12:29

Go-Spring 1.0.5,基于 IoC 的一站式开发框架

时隔四个月,Go-Spring 终于发布了新的版本。这么久才发布 1.0.5 版本的原因是这个版本改变了原来的代码管理方式,而新的管理方式需要摸索经验和开发相关支持工具。新的代码管理方式是使用主项目和子项目的方式管理各个模块的代码,开发都在主项目上,子项目的代码和主项目保持同步,这种方式实现了更简单的包名称。下面本次更新的详细内容: Framework 1. 实现更合理的进程退出顺序,更符合 Bean 的生命周期,Register -> Ini...

2
7
发表了资讯
2020/06/23 16:23

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

撒花!Go-Spring 迄今最稳定版本 v1.0.4 正式发布了!本次更新重点在 Web API 完善和 BeanSelector 实践上面。同时这个版本的 API 绝对稳定,大家可以放心地在生产环境中使用了!详细的更新内容如下: go-spring-parent 1. SpringError 模块添加 PanicImmediately 函数,增加错误码的默认值,优化 RPC 结果的显示; 2. SpringLogger 模块添加 Print 和 Printf 函数,可适配更多 Logger 接口,线程安全的修改 Logger 的打印级别;...

28
8
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
jwt-go 安全漏洞
授权机制缺失
jwt-go是个人开发者的一个Go语言的JWT实现。 jwt-go 4.0.0-preview1之前版本存在安全漏洞。攻击者可利用该漏洞在使用[]string{} for m[\"aud\"](规范允许)的情况下绕过预期的访问限制。
CVE-2020-26160 MPS-2020-13786
2022-08-08 18:22
Gorilla Websocket 输入验证错误漏洞
Gorilla Websocket是Gorilla个人开发者的一个基于Go语言实现的Websocket代码库。 Gorilla WebSocket 1.4.0之前版本存在输入验证错误漏洞,该漏洞源于通过websocket连接接收的websocket帧的长度存在整数溢出漏洞。攻击者可利用该漏洞会利用这个漏洞对允许websocket连接的HTTP服务器发起拒绝服务攻击。
CVE-2020-27813 MPS-2020-16819
2022-08-08 18:22
Gin-Gonic Gin 环境问题漏洞
HTTP请求的解释不一致性(HTTP请求私运)
Gin-Gonic Gin是Gin-Gonic团队的一个基于Go语言的用于快速构建Web应用的框架。 github.com/gin-gonic/gin 全部版本存在安全漏洞,该漏洞源于可以通过设置X-Forwarded-For头来欺骗客户端的IP。
CVE-2020-28483 MPS-2021-5932
2022-08-08 18:22
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
9 评论
43 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部