go
比嗨皮兔
主攻java,熟练 .net/c#、spring、spring cloud、dubbo、mybatis等,熟练使用go、shell、python等,其他中间件有tbschedule、xxl-job、consul、apollo、elk、cat、prometheus等,善于大数据、高并发、分布式以及微服务的相关优化和技术框架选型。
专利:CN113282633A CN113239043A CN111861669A CN111429060A
软著:安卓点名软件
展开
-
【Golang】exec.command命令日志输出示例
为了输出执行命令的日志,主要是执行时间很长,而且分批输出日志的命令。原创 2024-02-04 21:30:00 · 1050 阅读 · 0 评论 -
【Golang】自定义logrus日志保存为日志文件
为了方便查看日志,项目中需要把日志保存到对应的日志文件中,所以需要当前的配置,以使得日志能够保存到对应的日志文件中。原创 2024-02-04 20:45:00 · 1303 阅读 · 1 评论 -
【Golang】Perl 正则表达式语法的支持示例
是基于 RE2 语法的,并不直接支持 Perl 正则表达式的全部功能。虽然 Golang 的标准库并不直接提供对 Perl 正则表达式的支持,但是您可以使用第三方库来实现与 Perl 兼容的正则表达式功能。,该库提供了对 Perl 正则表达式语法的支持。您可以使用它来实现与 Perl 兼容的正则表达式匹配。在 Golang 中,标准库的正则表达式包。库实现对 Perl 正则表达式的支持。以下是一个示例代码,演示如何使用。一个常用的第三方库是。原创 2024-01-16 18:15:00 · 1456 阅读 · 0 评论 -
【Golang】consul的watch功能的实现示例
Consul Watch是Consul的一个特性,它允许客户端观察Consul键值存储中的变化并通过HTTP或DNS接口自动获取最新数据。其原理是客户端向Consul服务器注册一个watcher,并在监视的键值对发生变化时收到通知。Consul Watch可以用于实现服务发现、配置管理等场景。原创 2023-05-12 19:00:00 · 641 阅读 · 0 评论 -
【Go】MQTT的发布和订阅
当客户端订阅一个主题时,它需要指定所需的QoS(Quality of Service)等级和订阅主题的名称。在MQTT中,发布者将消息发布到主题(topic),而订阅者可以订阅一个或多个主题以接收相关消息。客户端通过连接到代理并发送相应的消息,代理将根据主题(topic)将消息转发给所有已经订阅该主题的客户端。当客户端发布一个消息时,它需要指定要发布的主题和消息内容,并将消息发送到代理。要发布消息,客户端需要连接到MQTT代理(broker)并指定要发布的主题和消息内容。原创 2023-05-06 19:45:00 · 3353 阅读 · 0 评论 -
【Golang】gin客户端动态加载Html格式文件
router := gin.New() var files []string filepath.Walk("./static", func(path string, info os.FileInfo, err error) error { if strings.HasSuffix(path, ".html") { files = append(files, path) } return nil }) router.LoadHTMLFiles(files...)原创 2022-11-08 12:49:31 · 854 阅读 · 0 评论 -
【开源项目 - go-archetype】 一个golang基础框架,开箱即用
go 样例项目说明当前项目包含了基本的数据库连接操作,以及对应的增删改的操作示例,可以快速地进行项目的开发,里面实现签名、日志记录等简单的功能。里面包含了使用样例。数据库可以使用 domain/dao/gen-dao.sh 生成基本的增删改操作,但是先配置里面数据库连接信息。数据库初始化在 init.go 类下面启动项目找到 main.go 类,运行里面的 func main() {目录说明api:对外接口的入口,但是需要在main里面这样调用 xxxx.xxxx(routerGro原创 2022-09-29 19:43:33 · 287 阅读 · 0 评论 -
【golang】编译打包及压缩的命令
说明当前的命令是用来打包golang程序的命令,命令的作用有不显示窗口以及压缩打包之后的文件包。使用go build -ldflags="-H windowsgui -s -w"-H windowsgui :隐藏窗口-s -w :压缩也可以使用upx工具进行压缩。...原创 2022-03-10 04:41:58 · 1260 阅读 · 0 评论 -
【golang】gin 权限和参数拦截器
gin 权限和参数拦截器原创 2022-01-24 20:40:50 · 4031 阅读 · 0 评论 -
【golang】list操作
1、importimport ( "container/list" )2、示例代码// 初始化listallTask := list.New()// 循环for task := allTask.Front(); task != nil; task = task.Next() { value := task.Value.(数据类型,比如string、自定义结构体)}原创 2021-07-20 20:09:00 · 513 阅读 · 0 评论 -
【golang】导出Excel
1、importimport ( "github.com/360EntSecGroup-Skylar/excelize")2、示例代码// 创建Excelxlsx := excelize.NewFile()// 新建sheetxlsx.NewSheet("sheetName")// 赋值xlsx.SetCellValue(sheetName, fmt.Sprintf("A%d", index), "")// 创建文件file, err := os.Create(文件路径)_,原创 2021-07-20 19:52:51 · 3571 阅读 · 0 评论 -
【golang】json反序列化
1、importimport ( "encoding/json" log "github.com/sirupsen/logrus")```## 示例代码```govar response XxlResponse err := json.Unmarshal(response.Body(), &xxlResponse) if err != nil { log.Errorf("%s", err) return nil }return xxlResponse...原创 2021-07-20 19:50:11 · 170 阅读 · 0 评论 -
【golang】正则提取及替换
importimport ( "container/list" "encoding/json" "fmt" "github.com/go-resty/resty/v2" "github.com/robfig/cron/v3" log "github.com/sirupsen/logrus" "net/http" "os" "regexp" "strconv" "time")示例代码func GetExecutor(cookies []*http.Cookie) *list.L原创 2021-07-20 19:47:53 · 1810 阅读 · 0 评论 -
【golang】字符串分隔
1、说明xxx2、示例代码func GetSplitArr(ling string) []string { return strings.Split(ling, ",")}原创 2021-07-20 19:31:10 · 292 阅读 · 0 评论 -
【golang】网络请求
importimport ( "encoding/json" "fmt" "github.com/go-resty/resty/v2" log "github.com/sirupsen/logrus" "os")示例代码response, err := resty.New().R(). SetHeader("Content-Type", "application/x-www-form-urlencoded"). SetBasicAuth("xxxx", "xxx"). Set原创 2021-07-20 19:28:54 · 291 阅读 · 0 评论 -
【golang】定时器实现
1、导入import ( "encoding/json" "github.com/robfig/cron/v3" log "github.com/sirupsen/logrus" "os")2、示例代码go func(dataCenter string, url string) { crontab := cron.New() _, err := crontab.AddFunc("0/15 * * * ?", func() { // 业务代码 }) if err != nil {原创 2021-07-20 19:23:18 · 272 阅读 · 0 评论 -
[golang] - 获取当前时间以及时间转换
1、获取当前时间import ( "time")const ( Date = "2006-01-02" DateTime = "2006-01-02 15:04:05")func main() { now := time.Now() nowDate := now.Format(InitDate) log.Info("当前日期:", nowDate) nowTime := now.Format(DateTime) log.Info原创 2021-06-21 21:10:14 · 2045 阅读 · 0 评论 -
go语言学习系列--开发工具(一)
LiteIDE 下载地址: https://sourceforge.net/projects/liteide/ 简介:LiteIDE is a simple, open source, cross-platform Go IDE(LiteIDE是一个简单,开源,跨平台的 go 语言 IDE)原创 2017-04-23 18:42:44 · 972 阅读 · 0 评论 -
Go言学习系列--开发工具(二)
前面的一节简单的介绍了Go语言的开发工具之一LiteIDE,现在用eclipse配置Go语言的开发环境,因为eclipse也是一个比较流行的开发工具,所以这章简单的介绍一下eclipse怎么配置Go语言的开发环境。 首先从https://www.eclipse.org/downloads/下载eclipse,这个找相关的文章很容易就配置成功啦,我本地一直使用,所以本身就已经安装原创 2017-04-24 18:51:10 · 498 阅读 · 1 评论 -
Go 语言变量的定义、用法、示例
go语言的变量定义有一下这几种方式:1、var 变量名 类型 (示例:var a int = 10,var a int),在变量定义完之后没有赋值时会赋默认值,比如 var a int,输出之后a的值为0。2、var 变量名 = 初始值(示例 var a = 10),会根据赋值的类型自动推断a的类型。3、变量 := 初始值(a := 10),这时a不能在之前定义过。简单示例:原创 2017-05-07 12:29:12 · 475 阅读 · 0 评论 -
Go 语言常量
Go 语言变量的定义用 const 关键字,定义的格式为:const 变量名 [类型] = 初始值const a int = 10const b = 10其实常量的定义只是把变量中的 var 替换为常量关键字 const,定义格式如变量中的定义,具体的可以参考 Go 语言变量的定义、用法、示例常量可以用len(), cap(), unsafe.Sizeof()常量计算原创 2017-05-07 13:00:43 · 539 阅读 · 0 评论 -
Go 语言常量定义与<<(左移)、>>(右移)和ioto的使用
我们都知道 > 为右移,比如 > 1 为 右移1位,现在看看Go语言常量定义const中用> 中的使用,先看示例:// Demo01 project main.gopackage mainimport "fmt"const ( a = 1 // iota = 0 b = 1 << iota // iota = 1 c d e = 2 f g原创 2017-05-07 13:59:02 · 1520 阅读 · 0 评论 -
Go语言学习系列--序言
Go语言学习系列原创 2017-04-22 21:38:04 · 303 阅读 · 0 评论