Golang(N)[Gin]

Go语言web框架学习—Gin

开发环境:
操作系统:ubuntu1804 x64
Golang 版本:go1.12.5.linux-amd64

一、go语言环境的安装

1.Go语言中文网下载安装包

go语言中文网下载Go的安装包

2.解压安装

2.0.Ctrl+Alt打开终端

在这里插入图片描述

2.1.进入下载文件夹

cd Downloads/
ll

在这里插入图片描述

2.2.解压到**/usr/local/**目录下

sudo tar -zxvf go1.12.5.linux-amd64.tar.gz -C /usr/local/

在这里插入图片描述

2.3.进入**/usr/local/**下查看是否存在go的文件夹

cd /usr/local/
ll

在这里插入图片描述

2.4.配置环境变量【全局配置文件bash.bashrc】

  • 创建工作空间
    在用户的家目录(/home/linux/)下创建一个用于go的工作空间,也就是GOPATH所在目录
mkdir -p workspace/go/

在这里插入图片描述

  • 创建工作空间的三个目录src,bin,pkg
  mkdir -p workspace/go/src workspace/go/bin workspace/go/pkg

在这里插入图片描述

  • 安装vim编辑器
sudo apt install vim -y
ll

在这里插入图片描述

  • 使用vim打开配置文件
sudo vim /etc/bash.bashrc

在这里插入图片描述

  • 在末尾插入并编辑
    打开后按下键盘中英文小写g直接定位在首行,按下键盘英文G直接定位到末尾
    在这里插入图片描述
    按下英文小写o键,直接在末尾的下一行进行插入编辑
    在这里插入图片描述
  • 在末尾粘贴如下代码
    **export GOPATH=/linux/home/workspace/go/**中的linux是用户名,不是linux系统名
export GOROOT=/usr/local/go
export GOPATH=/home/linux/workspace/go
export GOBIN=/home/linux/workspace/go/bin
export GOPROXY=https://goproxy.io
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin:$GOBIN:$GOPROXY

在这里插入图片描述

  • 使配置文件生效
source /etc/bash.bashrc 

在这里插入图片描述

go env

在这里插入图片描述

3.下载安装GoLang的集成开发工具IDE-GoLand

在这里插入图片描述

  • 下载完成,进入下载目录,确认是否存在Download文件目录下
cd Downloads/
ls

在这里插入图片描述

3.1. 解压到指定目录

sudo tar -zxvf goland-2019.1.3.tar.gz -C /usr/local/

在这里插入图片描述

  • 进入/usr/local/查看是否存在
cd /usr/local/
ls

在这里插入图片描述

  • 进入goland的目录,使用pwd获取文件目录备用
cd GoLand-2019.1.3/
pwd

在这里插入图片描述

  • 回到用户家目录
cd 

3.2.配置图标

  • 进入图标配置【/usr/share/applications不是 cd /usr/share/application】
cd /usr/share/applications

在这里插入图片描述

  • 新建一个goland的桌面图标
sudo vim goland.desktop

在这里插入图片描述

  • 把如下代码插入并适当修改
[Desktop Entry]
Encoding=UTF-8
Version=2019.1.3
Name=GoLand
GenericName=JetBrains GoLand
Comment=Intellij GoLand community version
Exec=/usr/local/GoLand-2019.1.3/bin/goland.sh
Icon=/usr/local/GoLand-2019.1.3/bin/goland.png
Terminal=false
Type=Application
Categories=Development;IDE

在这里插入图片描述

  • 保存并退出
    在这里插入图片描述
  • 退出终端,然后到ubuntu的菜单中
    在这里插入图片描述
  • 进入菜单,搜索,并添加到收藏夹
    在这里插入图片描述
  • 回到桌面查看
    在这里插入图片描述
  • 双击即可打开

3.3.激活配置

  • 双击打开后,询问是否导入配置,设置为否
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 不发送数据给JetBrains
    在这里插入图片描述
    在这里插入图片描述
  • 激活完成
    在这里插入图片描述

4.Go语言web框架GIN环境配置

4.1.下载安装

  • Ctrl+T 打开终端,并输入go get -u -v github.com/gin-gonic/gin
go get -u -v github.com/gin-gonic/gin
  • -u代表的是如果有就更新,-v代表的是安装过程是否需要展示在终端
    在这里插入图片描述
  • Enter键按下后发现报错,提示没有Git
    在这里插入图片描述
  • 安装Git
sudo apt install git -y

在这里插入图片描述

  • 再次执行下载安装gin
go get -u -v github.com/gin-gonic/gin

在这里插入图片描述

  • 在GOPATH/src目录下创建一个golang.org/x的目录,并进入
cd $GOPATH/src
mkdir -p golang.org/x/ && cd "$_"

在这里插入图片描述

  • 进入github的golang的扩展包页面copy链接golang.org/x/sys

  • 获取git clone 的链接
    在这里插入图片描述

git clone https://github.com/golang/sys.git

在这里插入图片描述

  • 再次执行下载git
go get -u -v github.com/gin-gonic/gin

在这里插入图片描述

4.2.或者使用包管理工具Govendor安装【可选操作】

  • go get govendor(安装)
go get github.com/kardianos/govendor
  • 创建项目文件夹web并进入文件夹
mkdir -p $GOPATH/src/web && cd "$_"
  • 初始化项目并添加 gin
govendor init
govendor fetch github.com/gin-gonic/[email protected]
  • 复制一个模板到上一步创建的项目名为web的项目中
curl https://raw.githubusercontent.com/gin-gonic/examples/master/basic/main.go > main.go
  • 运行项目
go run main.go

4.3.直接使用GoLand创建工程

在这里插入图片描述

  • 修改项目名称(项目一般不修改工作路径,只对项目名修改)和GOROOT(Go安装路径/usr/local/go)
    在这里插入图片描述
    在这里插入图片描述
  • 修改GOPATH和GOROOT,确保和配置Go的环境变量时一致
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 创建测试的Go文件Demo
    在这里插入图片描述
    在这里插入图片描述
  • 复制代码到ginDemo中
package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	// 获取gin的默认路由
	r := gin.Default()
	// 设置web请求为/的回调处理函数
	r.GET("/", func(c *gin.Context) {
		// 上下文的返回JSON格式数据,参数1为状态码,参数2为返回的数据,是一个map
		c.JSON(http.StatusOK, gin.H{
			"msg": "Hello Go Web Framework Gin!",
		})
	})
	// 运行:监听并提供服务【如果没有设置Run中的参数,默认监听0.0.0.0:8080】
	r.Run()
}

在这里插入图片描述

4.4. 运行测试

  • 打开终端【Ctrl+Alt+T】进入ginDemo.go所在文件目录
cd $GOPATH/src/web
  • 执行命令进行测试
go run ginDemo.go

在这里插入图片描述

发布了25 篇原创文章 · 获赞 11 · 访问量 2828

猜你喜欢

转载自blog.csdn.net/weixin_42366378/article/details/93902930