Tag: Go
All the articles with the tag "Go".
Golang pipeline模式
Published: at 03:15 PMpipeline流水线模式(管道模式),我们用这个模式来计算所有质数的和。 什么是质数 质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。 C++代码实现 我们先用一般的方法实现...
gorm写入数据库后时间差8小时
Published: at 11:01 AM这个很明显是时区的问题,首先检查一下数据库连接的uri,是否包含如下参数: parseTime=true&loc=Local 重新连接数据库就可以了,如果还不行那你可能要看一下系统环境设置了。 官方文档链接(https//github.co...
博客文章增加TOC
Published: at 02:01 AM博客文章是使用Markdown写的,有了TOC(Table of Contents)阅读起来体验更好,TOC就是所有h1组成的标签目录,点击后调到相应的位置。 获取所有h1标签 我用的是githubmarkdown库,在renderer的Header方法中可以获取,存...
golang设计模式-命令模式
Published: at 01:35 AM介绍 命令(Command)模式是一种对象的行为型模式,类似于传统程序设计方法中的回调机制,它将一个请求封装为一个对象,从而使得可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是对命令的封装,将发出命令的责任和执行命令的责任...
golang上传图片文件
Published: at 09:29 AM使用golang来实现图片的上传,服务端我们使用gin框架来接收保存图片 服务端 服务端路由 router.POST("/uploadimage", controller.UploadImage) 服务端保存上传的图片 这里设置了一个简单的认证,上传文件的时候需要带一个pass字段里面存储了需要认证的字符串...
golang读取excel文档转换成json
Published: at 05:34 AM我们是使用github.com/tealeg/xlsx库实现的,用法比较简单: 1. 读取excel文件 2. 遍历sheets 3. 在每个sheet中再遍历每行 当然这个库还可以写入excel文档这里就不介绍了,有兴趣的可以去github上查看。 代码如下: package main import ( "encoding/json" ...
golang 日志文件切割、保存最大文件数
Published: at 09:14 AM组合使用logrus和lumberjack库能达到我们的目的。 如:日志单个文件最大10M,最多保存30个日志,代码如下: package Logger import ( "io" "os" "path" "github.com/sirupsen/logrus" "gopkg.in/natefinch/lumberjack.v2" ) var ( logger = logru...
golang 单例模式
Published: at 08:50 AM单例模式(Singleton Pattern)是最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 要保证线程安全 package main import ( "fmt" "sync" "time" ) type Singleton struct { } var singleton Singleton va...
golang 中介者模式
Published: at 08:37 AM中介者模式是一种行为设计模式。此模式是创建一个中介对象,以防止对象之间的直接交互,从而避免它们之间的直接依赖关系。 一个很好的中介模式的例子是铁路系统平台,两列火车之间是相互独立的,站长充当调停者,使站台仅对其中一列列车可用。列车通过站长交互,站长维持着等候...
微信本地图片格式转化
Published: at 02:52 PMPC端微信收到的图片存储在本地,我们可以打开微信的设置->通用设置->文件管理->打开文件夹,在FileStorage/Image日期目录下找到图片文件,但是它经过了简单的加密并且后缀为.dat。 通过下面这个算法可以将dat文件还原成原始图片,目前支持jpg,gif,png三种格式,其他格式应该...