Gin框架介绍及环境搭建

简介: Gin简介Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,已经发布了1.0版本。具有快速灵活,容错方便等特点。其实对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错。框架更像是一些常用函数或者工具的集合。借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范。

Gin框架介绍及环境搭建

Gin简介

Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,已经发布了1.0版本。具有快速灵活,容错方便等特点。其实对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错。框架更像是一些常用函数或者工具的集合。借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范。

Gin框架是开源的,可以在github上下载其源码库,查看相应的说明。Gin源码库地址:github.com/gin-gonic/g…

Gin框架有一个官方网站,有对Gin相关的介绍和学习资料。官方网站:gin-gonic.com/

Gin特点和特性

  • 速度:Gin之所以被很多企业和团队所采用,第一个原因是因为其速度快,性能表现出众。
  • 中间件:和iris类型,gin在处理请求时,支持中间件操作,方便编码处理。
  • 路由:在gin中可以非常简单的实现路由解析的功能,并包含路由组解析功能。
  • 内置渲染:Gin支持JSON、XML和HTML等多种数据格式的渲染,并提供了方便的操作API。

学习文档

Gin官方为我们开发者提供了参考文档。学习文档地址如下:gin-gonic.com/zh-cn/docs/

网络异常,图片无法展示
|

Gin开发环境搭建

环境要求

gin框架需要go语言版本在1.6及以上。可以通过go version查看自己的go语言版本是否符合要求。

网络异常,图片无法展示
|

安装gin框架库

通过go get命令安装gin框架:

go get -u github.com/gin-gonic/gin
复制代码

安装完毕后,可以在当前系统的$GOPATH目录下的src/github.com目录中找到gin-gonic目录,该目录下存放的就是gin框架的源码。

安装完毕后,我们可以使用gin来写一个简单的Hello world程序。使用一下gin。

Hello Wrold

编码

新创建一个项目GinHelloWrold,并创建main.go程序,内容如下:

func main() {
    r := gin.Default()
    r.GET("/hello", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "pong",
        })
    })
    r.Run() // 监听并在 0.0.0.0:8080 上启动服务
}
复制代码

运行

执行运行命令:

go run main.go
复制代码

指定端口号运行

server := gin.Default()
...
server.Run(":8090")
复制代码

今天的文章就介绍到这儿,大家喜欢的话,可以点赞支持一下



相关文章
|
数据采集 前端开发 JavaScript
服务器端渲染(SSR)与客户端渲染(CSR)的比较
服务器端渲染(SSR)与客户端渲染(CSR)的比较
1855 0
|
Web App开发 人工智能 Android开发
iconfont.cn 阿里出品的矢量图标库
Iconfont.cn是阿里巴巴推出的矢量图标库,其中涵盖了1000多个常用图标,并在持续更新中。(目前已有7000+图标,部分图标为用户上传,因此默认不公开,但是可以搜索到。)
12684 0
iconfont.cn 阿里出品的矢量图标库
|
算法 Linux C++
【Linux系统编程】深入理解Linux中的chmod函数和mode_t类型
【Linux系统编程】深入理解Linux中的chmod函数和mode_t类型
524 0
|
运维 持续交付 开发工具
基础设施即代码(IaC):自动化基础设施管理的未来
基础设施即代码(IaC):自动化基础设施管理的未来
509 0
|
自然语言处理 安全 编译器
深入探索Linux下的luac命令:Lua编译器的奥秘
**探索Linux上的`luac`:Lua编译器详解** `luac`是Lua源代码的编译器,将`.lua`转换为字节码`.luac`,提升执行效率。它通过词法、语法分析生成可移植、安全的字节码。主要特点包括高效、可移植和安全。命令参数如`-l`列出字节码结构,`-o`指定输出,`-s`去除调试信息。使用示例:`luac -o script.luac script.lua`,然后用`lua script.luac`执行。注意版本兼容性,开发时保留调试信息,生产环境优化源代码并备份源文件。
|
运维 Kubernetes 安全
推荐3个开源好用的堡垒机
【7月更文挑战第11天】
4906 0
推荐3个开源好用的堡垒机
|
Kubernetes Linux 调度
将Kubernetes集群的CRI实现从cri-docker更改为containerd
本文记录了将Kubernetes集群的CRI实现从cri-docker更改为containerd的过程,包括cri-docker相关的卸载和containerd的安装配置。
1385 0
BATMJ技术实战之多线程+JVM+Nginx+Redis+SpringBoot(书籍赠送)
感谢各位的关注!!!!请看下面这就是小编免费赠送给大家和粉丝的福利哦 Java多线程编程核心实战(文档) 深入理解Java虚拟机:JVM实战(文档) 深入浅出Nginx实战(文档) Redis核心实战(文档) 深入浅出SpringBoot以及SpringBoot2.x(文档) 由于细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
|
设计模式 Java 关系型数据库
23种设计模式——原型模式
原型模式主要用于创建重复的对象,同时又能保证系统的性能。
198 0
23种设计模式——原型模式
|
应用服务中间件 Linux nginx
【Nginx】如何使用Nginx搭建流媒体服务器实现直播?看完这篇我会了!!(文末有福利)
最近几年,直播行业比较火,无论是传统行业的直播,还是购物、游戏、教育,都在涉及直播。作为在互联网行业奋斗了多年的小伙伴,你有没有想过如果使用Nginx搭建一套直播环境,那我们该如何搭建呢?别急,接下来,我们就一起使用Nginx来搭建一套直播环境。
417 0
【Nginx】如何使用Nginx搭建流媒体服务器实现直播?看完这篇我会了!!(文末有福利)

热门文章

最新文章