随笔分类 -  Go语言(golang)

golang学习
摘要:前段时间,在项目开发中经常和go语言的HTMLL template打交道,特意总结了几点我在使用中经常遇到不太明确的,比较纠结疑惑的知识点,巩固一下,也方便以后查找。 ​ 至于关于go template的系统性的介绍说明,这是一篇我经常查看的文章,写的非常全面。 1、作用域访问 ​ go templ 阅读全文
posted @ 2024-03-28 11:54 柒零壹 阅读(69) 评论(0) 推荐(0) 编辑
摘要:一、 从MySQL数据库中随机选取数据,可以使用 SQL 的 ORDER BY RAND() 语句来实现。具体步骤如下: 定义一个结构体用于存储数据 type User struct { Id int64 Name string Age int } 建立与数据库的连接,并获取一个 Engine 实例 阅读全文
posted @ 2024-03-08 10:32 柒零壹 阅读(93) 评论(0) 推荐(0) 编辑
摘要:ElasticSearch Elasticsearch(ES)是一个基于Lucene构建的开源、分布式、RESTful接口的全文搜索引擎。Elasticsearch还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,ES能够横向扩展至数以百计的服务器存储以及处理**PB* 阅读全文
posted @ 2023-08-04 10:02 柒零壹 阅读(810) 评论(0) 推荐(0) 编辑
摘要:pgx库简介 下面是来自官网的简介: pgx - PostgreSQL驱动和工具包 pgx是一个用于PostgreSQL的纯Go语言驱动和工具包。 pgx驱动是一个底层的高性能接口,暴露了PostgreSQL特有的功能,如LISTEN/NOTIFY和COPY。它还包含一个标准database/sql 阅读全文
posted @ 2023-08-03 08:47 柒零壹 阅读(384) 评论(0) 推荐(0) 编辑
摘要:go语言如何使用elastic官方客户端go-elasticsearch/v8实现数据批量更新 go语言的官方客户端 Elasticsearch 的官方 Go 客户端是由 Elastic 开发、维护和支持的客户端系列的最新成员之一。 初始版本于 2019 年初发布,并在过去几年中逐渐成熟,获得了重试 阅读全文
posted @ 2023-07-31 11:14 柒零壹 阅读(1135) 评论(0) 推荐(0) 编辑
摘要:问题 OPENCV的IMShow一次只能显示一张图片,但是很多时候我们需要同时显示多张图片。 方案一 网上搜索解决方案,多数是基于Python的,要么用numpy的hstack/vstack,要么使用plt解决。所幸,在opencv函数中找到了hconcat和vconcat,但是hconcat需要图 阅读全文
posted @ 2023-06-27 09:41 柒零壹 阅读(62) 评论(0) 推荐(0) 编辑
摘要:一、imread 不支持中文路径名,如果图片文件路径名中有中文,就会报错 imread_('W:\GZGTOOL\Images\壁纸\迪士尼乐园\s04.jpg'): can't open/read file: check file path/integrity 解决办法 很简单,参考python中 阅读全文
posted @ 2023-06-27 09:40 柒零壹 阅读(336) 评论(0) 推荐(0) 编辑
摘要:一、软件环境 服务端基于go@1.19.3, gin@1.8.2 开发 浏览器端使用chrome、edge及firefox进行测试 二、错误再现 server端使用gin中间件技术自定义一些中间件,这里导致问题出现的主要涉及到“授权监测”和“附件大小限制”两个中间件。之所以如此是因为这两个中间件中都 阅读全文
posted @ 2023-02-09 16:16 柒零壹 阅读(623) 评论(0) 推荐(0) 编辑
摘要:最近在使用Gin框架的模板加载过程中,发现其对于多级子目录中的模板支持有问题(仅仅支持一级子目录),后经过查看其源码发现是filepath包的Glob方法的问题。下面先说结论: 多级目录支持有问题 不支持shell下的Glob的扩展特性 下面是我的模板目录结构: views │ 401.html │ 阅读全文
posted @ 2023-02-02 20:05 柒零壹 阅读(454) 评论(0) 推荐(0) 编辑
摘要:Go 2.0 新特性展望:详细 go2.0 会有什么新特性呢?下图是一个老外的调侃,他不希望发生这样的事情(please don't make it happen)。我倒是希望其中一些实现,比如泛型和操作符重载和多态。 Go 1.9 新特性:详细 1,类型别名,type alias 2,新的math 阅读全文
posted @ 2017-12-06 10:32 柒零壹 阅读(8345) 评论(0) 推荐(0) 编辑
摘要:出于效率等原因,最近将web框架由martini切换为了beego,其他地方都很平顺,只是两个框架的handler签名不一致,需要修改,所以耗时较长,这是预计到的。但是有一个地方没有预计到,也耗费了较多时间,那就是静态文件的服务。 用过martini的tx都知道,在mairtini中如果我们设... 阅读全文
posted @ 2015-01-30 11:38 柒零壹 阅读(2701) 评论(0) 推荐(1) 编辑
摘要:一、一般操作 1,声明变量,go自动初始化为nil,长度:0,地址:0,nilfunc main(){ var ss []string; fmt.Printf("length:%v \taddr:%p \tisnil:%v",len(ss),ss, ss==nil) }---Ru... 阅读全文
posted @ 2015-01-20 06:13 柒零壹 阅读(43639) 评论(0) 推荐(0) 编辑
摘要:一、首先,需要了解一下websocket基本原理:here二、go语言的websocket实现:基于go语言的websocket也有不少,比如github.com/gorilla/websocket。这里选用的应该算是官方的实现code.google.com/p/go.net/websocket使用... 阅读全文
posted @ 2015-01-13 18:30 柒零壹 阅读(1234) 评论(0) 推荐(0) 编辑
摘要:如果有两个map,内容都一样,只有顺序不同m1:=map[string]int{"a":1,"b":2,"c":3};m2:=map[string]int{"a":1,"c":3,"b":2};我们怎么判断二者是否一致呢?如果你打算这么写:fmt.Println("m1==m2",m1==m2)这是... 阅读全文
posted @ 2015-01-13 06:32 柒零壹 阅读(8735) 评论(0) 推荐(1) 编辑
摘要:我们知道,golang中局部变量初始化方法(使用“:=”创建并赋值),让我们在使用变量时很方便。但是,这也是易犯错误的地方之一。特别是这个初始化符还支持多个变量同时初始化,更特别的是它还支持原有变量赋值和新变量创建并赋值同时进行!也就是说如果有部分变量不存在的而另外一些是已声明好的,用:=来初始化... 阅读全文
posted @ 2015-01-08 20:36 柒零壹 阅读(3517) 评论(0) 推荐(0) 编辑
摘要:由于前台web页面传来的日期对象是这样的格式“2010-11-03 15:23:22”,所以我安装网上查来的办法,自定义包装了time.Time对象,实现自己的Marshal和UnMarshal方法type DateTime struct { time.Time}const ctLayou... 阅读全文
posted @ 2014-12-30 08:26 柒零壹 阅读(11063) 评论(0) 推荐(0) 编辑
摘要:应用开发中的一个常见情景,为了避免简单重复,需要在基类中实现共用代码,着同样有助于后期维护。如果在以往的支持类继承的语言中,比如c++,Java,c#等,这很简单!可是go不支持继承,只能mixin嵌入,且看下面的代码:type ManKind interface{ Say(s string... 阅读全文
posted @ 2014-12-29 13:52 柒零壹 阅读(2085) 评论(0) 推荐(0) 编辑
摘要:golang的package和其他语言的组织方式完全不同,刚开始接触时,很不适应。golang的package的特点:1、go的package不局限于一个文件,可以由多个文件组成。 组成一个package的多个文件,编译后实际上和一个文件类似,组成包的不同文件相互之间可以直接引用变量和函数,不论是否导出; 因此,组成包的多个文件中不能有相同的全局变量和函数(这里有一个例外就是包的初始化函数:init函数,下面还有讨论)2、go不要求package的名称和所在目录名相同,但是你最好保持相同,否则容易引起歧义。因为引入包的时候,go会使用子目录名作为包的路径,而你在代码中真正使用时,却要使用你.. 阅读全文
posted @ 2014-03-12 15:49 柒零壹 阅读(12081) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示