golang构建web服务入门教程-环境部署(一)

golang 作为新时代的编程语言已经越来越流程,我们今天开始就一步一步构建一个能应用到生产环境的web服务; 第一步:下载golang环境,目前最新版本到了1.14,我们不要太冒进,使用1.13版本即可; 下载环境: 国内镜像地址:https://studygolang.com/dl 如果用的是 ...

[go]包和工程管理

一、系统环境变量 GOROOT 指定go的安装目录,win是在 C\\Go\\ ,Linux在 /usr/local/go 下,如果不是默认的目录,则需要指定 GOROOT环境变量,否则不需要 GOPATH 工作目录,可以指定多个,环境变量中用 分割 go get下载目录的时候默认会下载到第一个GO ...

7. Go 语言数据类型:指针

Hi,大家好。 我是明哥,在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:http://g ...

企业级项目结构拆分

目录结构 controller:与控制器相关 dao:与数据库相关 logic:与业务逻辑相关 model:模型层的增删改查 routers:路由层 static:静态文件层 templates:模板层 main.go:入口层 例子 go package main import ( "github. ...

Gin+Gorm小项目

[TOC] Gin+Gorm小项目 创建项目 引用静态文件 搭建架子 go package main import ( "github.com/gin gonic/gin" "net/http" ) //Tode Model type Tode struct { ID int Title strin ...

6. Go 语言数据类型:字典与布尔类型

Hi,大家好。 我是明哥,在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:http://g ...

golang的命令行程序开发

今天需要用Golang写一个简单的命令行小工具,虽然标准库的flag包也能实现,但是实现起来有些麻烦,而且对多级子命令更不支持,于是在网上找了这几个spf13、cobra和urfave/cli等,我反正不需要太复杂的,对比了下感觉cli这个库看上去要相对简单一些,于是就用这个库开发了。 git库地址 ...

gorm系列-删除

[TOC] Gorm删除 软删除 删除记录 警告 删除记录时,请 确保主键字段有值 ,GORM 会通过主键去删除记录,如果主键为空,GORM 会删除该 model 的所有记录。 go package main import ( "github.com/jinzhu/gorm" _ "github.c ...

gorm系列-更新

[TOC] Gorm更新操作 更新所有字段 Save()默认会更新该对象的所有字段,即使你没有赋值。 go package main import ( "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) //1. ...

gorm系列-查询

[TOC] Gorm查询 一般查询 go package main import ( "database/sql" "fmt" "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) //1. 定义模型 type Us ...

gorm系列-model

[TOC] Gorm Model 在使用ORM工具时,通常我们需要在代码中定义模型(Models)与数据库中的数据表进行映射,在GORM中模型(Models)通常是正常定义的结构体、基本的go类型或它们的指针。同时也支持sql.Scanner(扫描)及driver.Valuer(驱动)接口(inte ...

5.Go 语言数据类型:数组与切片

Hi,大家好。 我是明哥,在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:http://g ...

进程管理工具 Supervisor

要想在终端后台常驻进程,首先想到的是在命令后加 & 符号,来达到隐藏程序在后台的目的,尽管看起来进程已经在后台运行了,实际上终端会话关闭时进程还是会被 kill 掉,这种问题一般是采用搭配 nohup 命令来解决的,nohup 作用是忽略 SIGHUP 信号,而会话关闭时正好发送了该信号给会话内所有 ...

4. Go 语言数据类型:byte、rune与字符串

Hi,大家好。 我是明哥,在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:http://g ...

如何用Github钩子做自动部署

最近机缘巧合的购置了域名和服务器,不用实在是浪费,再加上一直没有属于自己的个人网站,所以打算用hexo在服务器上玩一下,这样也就不用再纠结用Github pages还是Gitee pages了。当然,今天的主题并不是博客搭建,而是如何利用Github的钩子,将博客代码部署到服务器上。 毕竟Githu ...

Golang Map 实现(二)

本文在golang map 数据结构的基础上,学习一个make 是如何构造的。 map 创建示例 在golang 中,初始化一个map 算是有两种方式。 第一种方式默认不指定map的容量,第二种会指定后续map的容量估计为100,希望在创建的时候把空间就分配好。 当make创建map时,底层做了什么 ...

<1···91011···36>