go和delphi基于proto数据标准 用代码工厂生成units.proto 用代码工厂生成DELPHI rest CRUD 用protoc将units.proto生成GO代码units.pb.go protoc --gofast_out=. units.proto // Code generated by protoc-gen-gogo. DO NOT EDIT. // source: units.proto package units impo
UIViewController 的生命周期有个奇怪的地方,就是有页面加载的方法 viewDidLoad(),却没有页面销毁的方法。只有一个 deinit{},它代表的是对象的销毁。然而关闭页面时,对象不一定会销毁。 如果在deinit{}里面去释放资源,资源没释放导致内存泄漏,那么deinit{}不会被调用;deinit{}不被调用就
本文来自博客园,作者:Arway,转载请注明原文链接:https://www.cnblogs.com/cenjw/p/16478717.html 项目结构 . ├── db │ ├── file.go │ └── mysql │ └── conn.go ├── doc │ └── 建表语句.sql ├── go.mod ├── go.sum ├── handler │ └
https://leetcode.cn/problems/reorder-list/solution/zhong-pai-lian-biao-by-leetcode-solution/ /** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ // 找中点+反转后半部分+合并前后两部分,
==故事背景== 工业物联场景经常会用到mqtt协议,调研了开源组件gmqtt,尝试做一些改造实验。 ==改造内容== 增加写入数据至influxdb的处理 ==改造过程== 【下载代码】 github路径:https://github.com/DrmagicE/gmqtt 下载代码zip包,生成自己的代码环境。 【置换包名】 下载下来
目录结构 E:\goproj\FileStorageDisk │ main.go │ readme.txt │ ├─handler │ handler.go │ └─static └─view index.html 本文来自博客园,作者:Jayvee,转载请注明原文链接:https://www.cnblogs.com/cenjw/p/2-1-upload-file.html 代码 main.go
在网上找grpc学习资料的时候,发先go语言自带一个rpc框架,不过只支持go语言,赶紧过来看看。 net/rpc 这里简要记了,详细的内容在go源码的注释里面。 注意事项: Go的RPC只支持go写的系统 Go RPC的函数有特殊要求 首字母必须大写 必须有两个参数,一个入参,一个是返回的参数,第二个参数必须
主要是通过观察者监听来完成 import UIKit class TFVC: UIViewController { override func viewDidLoad() { super.viewDidLoad() hideKeyboardWhenTappedAround() let tf = UITextField(frame: CGRect(x: 0, y: 0, width: 120, height: 44))
POST JSON func main() { url := "http://restapi3.apiary.io/notes" fmt.Println("URL:>", url) //也可以使用marshall 一个struc map array .... var jsonStr = []byte(`{"title":"Buy cheese and bread for breakfast.&q
本篇文章中,将描述如何使用go创建CA,并使用CA签署证书。在使用openssl创建证书时,遵循的步骤是 创建秘钥 > 创建CA > 生成要颁发证书的秘钥 > 使用CA签发证书。这种步骤,那么我们现在就来尝试下。 创建证书的颁发机构 首先,会从将从创建 CA 开始。CA 会被用来签署其他证书 // 对证书进
https://leetcode.cn/problems/intersection-of-two-linked-lists/solution/xiang-jiao-lian-biao-by-leetcode-solutio-a8jn/ /** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ func getI
今天遇到一个麻烦的问题,查询redis时候,查到数据的时候正常返回,查询不到数据时,返回了null,然而在lua中,常见的nil,但不常见null,这时候lua中对redis返回的null如何做判断呢?于是各种尝试。这是经过公司基础库封装的结果,并非官方的返回,redis返回结果如下: {"retmsg":"","result":null,"ret
// 如果数据库目录不存在,则新建一个if _, err := os.Stat(dirPath); os.IsNotExist(err) { if err := os.MkdirAll(dirPath, os.ModePerm); err != nil { return nil, err }} 在阅览别人代码时对上述第一个语句产生疑问,因为os.Stat返回的是一个FileInfo用于描
今天给大家分享一个实际踩坑的一个示例,以为的 nil 并不是 nil。众所周知,Go 编程中 nil 值的判断可谓是随处可见: v := findSomething()if v != nil { // do something} nil 值究竟是什么?这个在之前的文章也分析过( 深度剖析 Go 的 nil ),并且也提到了在 interface
在之前探讨延时队列的文章中我们提到了 redisson delayqueue 使用 redis 的有序集合结构实现延时队列,遗憾的是 go 语言社区中并无类似的库。不过问题不大,没有轮子我们自己造
一.使用库说明 Golang中连接kafka可以使用第三方库:github.com/Shopify/sarama 二.Kafka Producer发送消息 package main import ( "fmt" "github.com/Shopify/sarama" ) func main() { config := sarama.NewConfig() config.Producer.RequiredAcks = sarama.WaitForAll
mysql库的安装: 直接在vscode终端运行: go get -u github.com/go-sql-driver/mysql 下载完之后,导入包 import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) 数据库初始化: //定义全局变量db,方便之后对数据库操作 var db *sql.DB //定义一个初始化数据
1、结构体的定义 定义:type xxx struct 使用:var关键字创建、冒号:创建、new关键字创建 例如 package main import "fmt" type treeNode struct { value int left, right *treeNode } func main() { var root treeNode //var关键字创建 fmt.Print(roo
前面这篇文章<Golang里面MD5的写法和性能>介绍了如何计算字符串的md5,下面我们来说说如何计算文件的md5。 https://wangbjun.site/2020/coding/golang/file-md5.html 1.错误的方式 有人说,文件可以读取成字符串,然后再计算就可以了,如下: func FileMD5(filePath string) (string,
解决的主要是IOS12以上的设备, 在键盘隐藏后, 点击依然被吞的问题. 主要参考 IOS的responder问题。 在IOSView中, DeactiveKeyboard的时候, 需要ResignResponder。 // return nil之后, view持有的 CachedMarkedText 会残留, 导致一个textview无法被释放掉。非常的隐晦,要注意! - (UI
程序框架 服务器server.go package main import ( "fmt" "net" ) func process(conn net.Conn) { defer conn.Close() for { buf := make([]byte, 1024) fmt.Printf("服务器在等待客户端%s发送信息\n", conn.RemoteAddr().String()) n, err := conn.R
指针类型存储的值是一个地址,默认值是 nil。 不支持指针运算,不同类型的指针不能互相转化(可以借助unsafe.Pointer进行转换)。 func main() { // p 是指针变量,*int 是指针类型 var p *int // p 刚定义时是一个空指针,值为 nil,因此直接赋值会报错(运行时错误) *p = 17
1、java的生成是RSA的解密是 "RSA/ECB/PKCS1Padding"; 2、PHP的是 OPENSSL_PKCS1_PADDING package main import ( "crypto/rand" "crypto/rsa" "crypto/x509" "encoding/pem" "fmt" "os&q
hello,大家好呀,我是小楼。 前几天不是写了这篇文章《发现一个开源项目优化点,点进来就是你的了》嘛。 文章介绍了Sentinl的自适应缓存时间戳算法,从原理到实现都手把手解读了,而且还发现Sentinel-Go还未实现这个自适应算法,于是我就觉得,这简单啊,把Java代码翻译成Go不就可以混个PR? 甚至
之前我们已经看过了 Golang 常见设计模式中的装饰和选项模式,今天要看的是 Golang 设计模式里最简单的单例模式。单例模式的作用是确保无论对象被实例化多少次,全局都只有一个实例存在。根据这一特性,我们可以将其应用到全局唯一性配置、数据库连接对象、文件访问对象等。Go 语言实现