-
golang利用模板生成数据库表对应的模型及操作函数
所属栏目:[大数据] 日期:2020-12-16 热度:146
起因 生成过程 准备工作 获取表结构信息 生成struct 相关模板语法说明 一点说明 一点问题 起因 很多年以前,当我第一次接触到ORM的时候,我就有一点疑惑:这玩意用起来倒是方便,就是模型结构得一个字段一个字段的写,非常枯燥也非常累人,而且如果表结构修[详细]
-
golang-encoding模块学习
所属栏目:[大数据] 日期:2020-12-16 热度:138
//Golang中encoding的用法 package main import ( "bytes" "encoding/binary" "encoding/hex" "encoding/xml" "fmt" "os" ) func goxml() { type Address struct { City,State string } //xml元素节点增加属性,需要重新定制结构体 type ElementWithAttr str[详细]
-
Golang HTTPS
所属栏目:[大数据] 日期:2020-12-16 热度:163
用 golang 来实现的 webserver 通常是是这样的 //main.gopackage mainimport ("fmt""io""net/http")func defaultHandler(w http.ResponseWriter,r *http.Request) {io.WriteString(w,"h1Golang HTTP/h1")}func main() {mux := http.NewServeMux()mux.HandleF[详细]
-
Go 之旅一: 包、变量和函数
所属栏目:[大数据] 日期:2020-12-16 热度:134
原文链接 http://ironxu.com/687 学习 A Tour of Go (中文参考 Go 之旅中文 ) 整理的笔记。介绍包、变量和函数的基本概念和使用。 包、变量和函数 1. package $GOPATH/src/go_note/gotour/basics/package/package.go 源码如下: /** * packages 的相关概念 */[详细]
-
golang: 详解interface和nil
所属栏目:[大数据] 日期:2020-12-16 热度:95
golang的nil在概念上和其它语言的null、None、nil、NULL一样,都指代零值或空值。nil是预先说明的标识符,也即通常意义上的关键字。在golang中,nil只能赋值给指针、channel、func、interface、map或slice类型的变量。如果未遵循这个规则,则会引发panic。对[详细]
-
golang 条件语句和循环语句
所属栏目:[大数据] 日期:2020-12-16 热度:200
golang的条件语句: packagemainimport("fmt")funcmain(){age:=18//ifelseifelse语句ifage==18{fmt.Println("yourageis18")}elseifage18{fmt.Println("yourageisbiggerthan18")}else{fmt.Println("yourageissmallerthan18")}//swith语句匹配一个就退出switch[详细]
-
Golang 发送和接收数据公共类
所属栏目:[大数据] 日期:2020-12-16 热度:157
package RequestCenterimport ("bytes""io""net""runtime""strings""time")//请求结构体type QRequest struct {conn net.Conn}//构造函数func CreateRequest(typename string,host string) *QRequest {request := new(QRequest)//GC析构前调用runtime.SetFin[详细]
-
golang
所属栏目:[大数据] 日期:2020-12-16 热度:138
来源:http://golang-book.com/ golang 语法 //变量var x string = "Hello World"var x string//golang 字符串默认初始化是 “”,不会有nil出现x = "Hello World"var x = "Hello World"//多行字符串x := `abc`//非string 转string方法#string到int int,err:=[详细]
-
golang 的url模块示例
所属栏目:[大数据] 日期:2020-12-16 热度:101
package mainimport "fmt"import "net/url"import "strings"func main() {//我们将解析这个 URL 示例,它包含了一个 scheme,认证信息,主机名,端口,路径,查询参数和片段。 s := "postgres://user:pass@host.com:5432/path?k=v#f"//解析这个 URL 并确保解[详细]
-
Golang gRPC实践 连载七 HTTP协议转换
所属栏目:[大数据] 日期:2020-12-16 热度:84
gRPC HTTP协议转换 正当有这个需求的时候,就看到了这个实现姿势。源自coreos的一篇博客,转载到了grpc官方博客gRPC with REST and Open APIs。 etcd3改用grpc后为了兼容原来的api,同时要提供http/json方式的API,为了满足这个需求,要么开发两套API,要么[详细]
-
Golang gRPC实践 连载六 内置Trace
所属栏目:[大数据] 日期:2020-12-16 热度:83
内置Trace grpc默认提供了客户端和服务端的trace日志,可惜没有提供自定义接口,当前只能查看基本的事件日志和请求日志,对于基本的请求状态查看也是很有帮助的,客户端与服务端基本一致,这里已服务端开启trace为例,修改hello项目的server代码: server/ma[详细]
-
Golang ReverseProxy 简单的反向代理用于内网穿透
所属栏目:[大数据] 日期:2020-12-16 热度:120
ReverseProxy 简单的反向代理用于内网穿透 特别注意,此工具只适合小文件类的访问测试,用来做做数据调试 前言 最近周末闲来无事,想起了做下微信公共号的开发,但微信限制只能80端口的,自己用的城中村的那种宽带,共用一个公网,没办法自己用路由做端口映[详细]
-
基于Golang的IP地址信息查询服务
所属栏目:[大数据] 日期:2020-12-16 热度:115
原文链接:http://tabalt.net/blog/ipquer... 工作中经常会有通过IP匹配用户信息的需求,如确定用户所在的地区(国家/省份/城市)、运营商、时区、经纬度等等。前一阵有个Golang开发的项目也有这样的需求,于是简单实现了一个包,最近忙里偷闲又包了一个支持[详细]
-
Golang 生成Mac OS X dylib调用问题
所属栏目:[大数据] 日期:2020-12-16 热度:143
突然想试试用go写个dylib供Objective-c调用,确发现总是报无法找到库的错误,无奈只好试试百度跟谷歌,总算是找到一个关于类似的问题的(ps:那些说改选项的就是个坑,都没说到关键点)。 不甘心后面又找到种方法了,见:http://log.zyxar.com/blog/2012/03/1[详细]
-
golang的位运算操作符的使用
所属栏目:[大数据] 日期:2020-12-16 热度:125
位运算 AND| 位运算 OR^ 位运算 XOR^ 位清空 (AND NOT) 左移 右移 感觉位运算操作符虽然在平时用得并不多,但是在涉及到底层性能优化或者使用某些trick的时候还是比较有意思。 (AND) |(OR) 就不提了最常用的东西 会编程就会。 操作的话是当 两个数需要同时为[详细]
-
Golang gRPC实践 连载五 拦截器 Interceptor
所属栏目:[大数据] 日期:2020-12-16 热度:199
Interceptor grpc服务端提供了interceptor功能,可以在服务端接收到请求时优先对请求中的数据做一些处理后再转交给指定的服务处理并响应,功能类似middleware,很适合在这里处理验证、日志等流程。 在自定义Token认证的示例中,认证信息是由每个服务中的方法[详细]
-
golang中发送http请求的几种常见情况
所属栏目:[大数据] 日期:2020-12-16 热度:68
整理一下golang中各种http的发送方式 最初的一些项目中,很多的地方都使用到了golang发送http请求,之后再对请求收到的结果进行一些处理,所用到的模式也比较固定,这里整理一下集中http的发送方式,先记录这么多,再一点一点添加。 最基本的场景 方式一 使[详细]
-
golang sync WaitGroup
所属栏目:[大数据] 日期:2020-12-16 热度:89
WaitGroup:它能够一直等到所有的goroutine执行完成,并且阻塞主线程的执行,直到所有的goroutine执行完成。 Add(delta int),Done(),Wait() Add添加或者减少等待goroutine的数量 Done相当于Add(-1) Wait执行阻塞,直到所有的WaitGroup数量变成0 package main[详细]
-
《Go in Action 2015.11.pdf》之Go’s type system
所属栏目:[大数据] 日期:2020-12-16 热度:82
Interface Type embedding Interface type notifier interface { notify()} type user struct { name string email string } func (u *user) notify() { fmt.Printf( "sending %v %v" ,u.email,u.name)} func sendNotification(n notifier) { n.notify()} fu[详细]
-
Golang context包入门
所属栏目:[大数据] 日期:2020-12-16 热度:114
Golang context包入门 转自:http://studygolang.com/articles/9624 概述 Golang 的 context Package 提供了一种简洁又强大方式来管理 goroutine 的生命周期,同时提供了一种 Requst-Scope K-V Store。但是对于新手来说,Context 的概念不算非常的直观,这篇[详细]
-
Golang操作Office Excel 文档类库Excelize
所属栏目:[大数据] 日期:2020-12-16 热度:89
Golang操作Office Excel 文档类库Excelize 转自:http://studygolang.com/articles/9623 Excelize是Golang 编写的一个用来操作 Office Excel 文档类库,基于微软的 Office OpenXML 标准。可以使用它来读[详细]
-
Golang去除slice和list的重复元素
所属栏目:[大数据] 日期:2020-12-16 热度:123
Golang去除slice和list的重复元素,非常有用的功能 转自:http://studygolang.com/articles/9622 Golang中,利用反射和interface就可以做到,不废话看代码 func main() { b := []string{"a","b","c","e","f","a","g","c"} sort.Strings(b) fmt.Println(Dupli[详细]
-
golang set集合去重以及交叉并集计算
所属栏目:[大数据] 日期:2020-12-16 热度:110
golang set集合去重以及交叉并集计算 转自:http://xiaorui.cc/?p=2944 我这边有个场景是针对数据去重,但又不是简单的去重,是有时间区间范围内的交集、并集计算。 废话不多说,我估计有不少人记不清集合的并集、差集、交集的概念了。 集合的分类: 并集:以[详细]
-
golang使用信号量热更新
所属栏目:[大数据] 日期:2020-12-16 热度:154
package mainimport ( "encoding/json" "fmt" "io/ioutil" "log" "os" "os/signal" "sync" "syscall")//用json配置测试type Config struct { Test1 string `json:"Test1:` Test2 int `json:"Test1:`}var ( config *Config configLock = new(sync.RWMutex))fu[详细]
-
Golang、python去除slice和list的重复元素,非常有用的功能
所属栏目:[大数据] 日期:2020-12-16 热度:130
Golang中,利用反射和interface就可以做到,不废话看代码 func main() { b := []string{"a","b","c","e","f","a","g","c"} sort.Strings(b) fmt.Println(Duplicate(b)) c := []int{1,1,2,4,6,7,8,3,5,8} sort.Ints(c) fmt.Println(Duplicate(c))}func Duplic[详细]
