golang
文章平均质量分 53
golang
编程哲学家
资深PHP,擅长抽象编程,没有我实现不了的需求,没有我解决不了的问题;主导过多个成功的项目,带领过超过十人以上团队,擅长架构与程序设计、发掘业务以及解决各种各样的问题,知识面广,博学,爱智慧与思考。
展开
-
go:expected ‘package‘, found ‘import‘
看看是不是忘了在第一行加packge了:-),忘记在文件的首行写package包声明会报expected ‘package‘, found ‘import‘原创 2022-04-19 08:16:29 · 1293 阅读 · 0 评论 -
go sqlx库使用指南
在项目中我们通常可能会使用database/sql连接MySQL数据库。本文借助使用sqlx实现批量插入数据的例子,介绍了sqlx中可能被你忽视了的sqlx.In和DB.NamedExec方法。sqlx介绍在项目中我们通常可能会使用database/sql连接MySQL数据库。sqlx可以认为是Go语言内置database/sql的超集,它在优秀的内置database/sql基础上提供了一组扩展。这些扩展中除了大家常用来查询的Get(dest interface{}, ...) error和Sele原创 2022-04-13 20:45:19 · 969 阅读 · 0 评论 -
【Go MySQL】Go操作MySQL
MySQL是业界常用的关系型数据库,本文介绍了Go语言如何操作MySQL数据库。Go操作MySQL连接Go语言中的database/sql包提供了保证SQL或类SQL数据库的泛用接口,并不提供具体的数据库驱动。使用database/sql包时必须注入(至少)一个数据库驱动。我们常用的数据库基本上都有完整的第三方实现。例如:MySQL驱动下载依赖go get -u github.com/go-sql-driver/mysql使用MySQL驱动func Open(drive原创 2022-04-13 20:47:59 · 618 阅读 · 0 评论 -
Go语言基础之net/http
Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现。net/http介绍Go语言内置的net/http包提供了HTTP客户端和服务端的实现。HTTP协议超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。HTTP客户端基本的HTTP/HTTPS请求Get、Head、Post和Pos原创 2022-04-13 20:27:59 · 1239 阅读 · 0 评论 -
VS Code配置Go语言开发环境
VS Code是微软开源的一款编辑器,插件系统十分的丰富。本文就介绍了如何使用VS Code搭建Go语言开发环境。VS Code配置Go语言开发环境说在前面的话,Go语言是采用UTF8编码的,理论上使用任何文本编辑器都能做Go语言开发。大家可以根据自己的喜好自行选择。编辑器/IDE没有最好只有最适合。下载与安装VS Code官方下载地址:Download Visual Studio Code - Mac, Linux, Windows三大主流平台都支持,请根据自己的电脑平台选择对应的安装原创 2022-04-13 20:23:30 · 1685 阅读 · 0 评论 -
go携程并发请求
package main import ( "fmt" "io/ioutil" "net/http" "time") // HTTP get请求func httpget(ch chan int) { resp, err := http.Get("http://csdn.net") if err != nil { fmt.Println(err) return } defer resp.Body.Cl.原创 2022-04-11 17:07:36 · 597 阅读 · 0 评论 -
Go语言执行原理以及Go命令
一、Go的源码文件Go 的源码文件分类:如上图,分为三类:1、命令源码文件:声明自己属于 main 代码包、包含无参数声明和结果声明的 main 函数。命令源码文件被安装以后,GOPATH 如果只有一个工作区,那么相应的可执行文件会被存放当前工作区的 bin 文件夹下;如果有多个工作区,就会安装到 GOBIN 指向的目录下。命令源码文件是 Go 程序的入口。同一个代码包中最好也不要放多个命令源码文件。多个命令源码文件虽然可以分开单独 go run 运行起来,但是无法通过.转载 2021-10-14 16:13:12 · 760 阅读 · 0 评论 -
golang使用http client发起get和post请求示例
golang要请求远程网页,可以使用net/http包中的client提供的方法实现。查看了官方网站有一些示例,没有太全面的例子,于是自己整理了一下:get请求func httpGet() { resp, err := http.Get("http://www.01happy.com/demo/accept.php?id=1") if err != nil { // handle error } defer resp.Body.Close() body, err :原创 2021-10-14 16:00:51 · 2027 阅读 · 0 评论 -
golang发送get请求的各种操作:自定义header请求头、带cookie请求、channel并发请求
请求地址var ( requestGetURLNoParams string = "http://httpbin.org/get" requestGetURL string = "http://httpbin.org/get?a=a&b=b&c=ccc" imageURL string = "http://httpbin.org/image")普通get请求// 基本get请求func basicGet() { resp, err := http.Get原创 2021-10-14 15:09:59 · 8646 阅读 · 1 评论 -
go get命令详解
go get 命令可以借助代码管理工具通过远程拉取或更新代码包及其依赖包,并自动完成编译和安装。整个过程就像安装一个 App 一样简单。这个命令可以动态获取远程代码包,目前支持的有 BitBucket、GitHub、Google Code 和 Launchpad。在使用 go get 命令前,需要安装与远程包匹配的代码管理工具,如 Git、SVN、HG 等,参数中需要提供一个包名。这个命令在内部实际上分成了两步操作:第一步是下载源码包,第二步是执行 go install。下载源码包的 go 工具会自动根原创 2021-10-14 15:00:01 · 2203 阅读 · 0 评论 -
go get 加 -u 和不加 -u 的区别
加上 -u可以利用网络来更新已有的代码包及其依赖包。如果已经下载过一个代码包,但是这个代码包又有更新了,那么这时候可以直接用 -u 标记来更新本地的对应的代码包。如果不加这个 -u 标记,执行 go get 一个已有的代码包,会发现命令什么都不执行。只有加了 -u 标记,命令会去执行 git pull 命令拉取最新的代码包的最新版本,下载并安装。...原创 2021-10-14 14:54:02 · 227 阅读 · 0 评论 -
go-micro 微服务开发
Micro概述Micro是一个简化分布式开发的微服务生态系统。它为开发分布式应用程序提供了基本的构建模块。什么是Micro?Micro是一个微服务生态系统,致力于提供产品,服务和解决方案,以实现现代软件驱动型企业的创新。我们计划成为任何与微服务相关的事实资源,并期待公司能够利用这项技术为自己的业务。从早期的原型开始一直到大规模的生产部署。我们已经看到行业发生根本性转变。摩尔定律是有效的,我们每天都能获得越来越多的计算能力。但是,我们无法完全获取这种新的能力。现有的工具和开发实践在这个新时代并原创 2021-08-29 11:33:45 · 423 阅读 · 0 评论 -
Go时间相关函数
package main import "fmt" import "time" func main() { p := fmt.Println // 从获取当前时间开始 now := time.Now() p(now) // 你可以提供年,月,日等来创建一个时间。当然时间 // 总是会和地区联系在一起,也就是时区 th...原创 2021-08-29 11:00:59 · 125 阅读 · 0 评论 -
用Nginx部署Go应用
Nginx 是一个 Web Server,可以用作反向代理、负载均衡、邮件代理、TCP / UDP、HTTP 服务器等等,它拥有很多吸引人的特性,例如: 以较低的内存占用率处理 10,000 多个并发连接(每10k非活动HTTP保持活动连接约2.5 MB ) 静态服务器(处理静态文件) 正向、反向代理 负载均衡 通过OpenSSL 对 TLS / SSL 与 SNI 和 OCSP 支持 FastCGI、SCGI、uWSGI 的支持 WebSo原创 2021-08-29 10:58:00 · 2523 阅读 · 0 评论 -
关于golang第三方包的引用报错:no required module provides package
关于golang第三方包的引用报错:no required module provides package : go.mod file not found in current directory or any parent directory;执行:go env -w GO111MODULE=auto原创 2021-06-26 12:21:43 · 18423 阅读 · 0 评论 -
Go 程序的一般结构: basic_structure.go
Go 程序的一般结构: basic_structure.go//当前程序的包名packagemain//导入其他包import."fmt"//常量定义constPI=3.14//全局变量的声明和赋值varname="gopher"//一般类型声明typenewTypeint//结构的声明typegopherstruct{}//接口的声明typegolanginterface{}//由main函数作为程序入口点启动...原创 2021-06-26 12:21:06 · 96 阅读 · 0 评论 -
在接触go之后,我发现它真的不适合写业务逻辑,更适合些中间件,中间件语言,这是谷歌给它的定位,它不是应用层语言
其实go不适合写业务,更适合写中间件,php更适合写业务原创 2021-05-28 00:36:58 · 1339 阅读 · 0 评论 -
Go是Google的语言,而不是我们的语言
五月22,2019在Twitter上,我看到了以下问题(通过):#go中有很多关于泛型的话题,难道我们没有像OpenGo这样的社区可以在其中实现泛型的东西,而是等待正式的#go泛型发生吗?像OpenJDK这样的东西有很多答案说明为什么这种情况不会发生,但是通常不会大声说出来的是Go是Google的语言,而不是社区的语言。是的,有一个社区为Go贡献了力量,其中一些重要而有价值的事物。您只需要查看CONTRIBUTORS中人员的多样性或查看提交中出现的人员的多样性即可。但是Go...翻译 2021-05-18 12:46:07 · 1071 阅读 · 0 评论 -
由于golang语言炒的火热,我最近也花了几天时间看了下,说下我对goalng的一些看法和见解
go这与有上手的第一感觉就是这语言各方面都好原始,语言各方面都不完善、不完备.五天时间,我个人对go的一些总结:面向对象几乎处于荒漠阶段 语法松散 没有泛型 错误处理非常原始。 语法怪异既不像c系,又不像java系,语法很简短,但简短的同时又非常碎,就语法本身来说语义性并不是很强;java语法是又臭又长像写句子,非常的冗长,但语义性很强。在语法设计方面,我个人感觉很鸡肋 开发效率应该很低.语言本身提供的东西越少开发效率越低,go语言本身提供的东西非常少,毕竟是半底层语言。php之所以开发.原创 2020-12-19 18:36:11 · 199 阅读 · 2 评论