自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 个人使用git常用命令总结

git stash save "save tag" (贮藏已经修改的代码,如果写错分支了,没有提交 可以使用,之后切换到你需要的分支进行提取出来)// 包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。// 以当前本地分支作为基础新建一个xxx分支(默认你这个xxx分支 也是push到 当前分支的远程分支)git push -f -u // -u 这里是为了持续推送到指定分支 这里意义不大。// 会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,

2023-04-28 16:23:53 129

原创 golang:条件编译-tags -ldflags 编译使用场景介绍

最近在GO项目接入nacos做服务注册和服务发现的时候,需要进行条件编译因此需要用到-tags 和 -ldflags的使用场景;这里的场景例如在编译的时候生产环境有例如部分秘钥或者密码必须编译的时候注入,可以使用到-ldflags;tags是可以条件编译整个文件,例如example.go只要在头部写上。-ldflags是可以对单个变量进行编译入参写入进编译文件中;我们的session环境变量值是:session真的有了!我们的env环境变量值是:testing。我们的JDK变量值是:tttwwwzzz。

2023-01-30 19:28:52 744

原创 leetcode|golang:初级算法:买卖股票的最佳时机 II

随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6 - 3 = 3。链接:https://leetcode.cn/leetbook/read/top-interview-questions-easy/x2zsx1/解释:在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4。输入:prices = [7,1,5,3,6,4]

2023-01-05 16:32:28 362

原创 leetcode|golang:初级算法:删除排序数组中的重复项

更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应该保存最终结果。给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。链接:https://leetcode.cn/leetbook/read/top-interview-questions-easy/x2gy9m/不要使用额外的空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。如果所有断言都通过,那么您的题解将被 通过。

2023-01-05 14:01:58 259

原创 golang泛型实现通用gorm表格增删改查

这样就可以进行表格的增删改查了,不需要一个表新增重复的增删改查代码了,清晰度会更加明了,其他可以使用的地方还有很多,以后可以多多留心,以后整个代码应该都会焕然一新。在go1.18以前我们实现不同表格的增删改查,需要新建很多struct 之后绑定指针类型方法,并且所有不同的表都得重写一遍例如这样;我们如果需要新增表格 就新增TableX 的struct 和 TableWhereX的一样的struct就可以了;如果有100个表,没有泛型支持这里的代码需要写100遍,特别的麻烦。

2023-01-05 11:13:45 1044

原创 golang 实现不定数量企微群机器人消息通知 顺序必须一致 并不超过群机器人消息每分钟提醒上限20条

如果还有好多没有发完,我们的ticket会20秒定时去检查最近发送时间有没有超过一分钟,如果超过 我们就开始发送数据,并发完之后写入发送条数和最新的发送时间(加锁);如果触发了发送立马去检查UrlsMap[url] 查看这个struct中已经发送的数量如果大于等于20 我们直接结束,如果小于20条,我们发送20-x = 剩余条数。我们如果收到消息之后,就立马将消息放到以url作为key的redis hashMap中 这样需要发送消息的时候只要找到有这个redis队列缓存就行,

2022-10-19 17:17:04 894

原创 golang 递归读取文件夹中文件

由于文件夹内可能还有文件夹,因此是需要递归调用自己的,但是返回值如果每次都进行append会很麻烦,因此将需要记录的文件字符串直接放到一个指针类型的slice中;这里的CircleDirFiles方法进行了递归调用,由于需要将返回值放到入参里,因此使用了*[]string类型的入参,这样才不会因为函数结束而丢弃掉生成的路径。...

2022-08-10 19:53:27 510

原创 修改js代码报错Uncaught SyntaxError:illegal character U+0000错误解决,js代码乱码,nginx配置

问题展现:今天在维护老代码的时候,用php + js来改页面,我中间加了几行js代码如图:问题查找: 一开始我是其他代码。,为了排除是代码写错了,我就改成了console.log继续执行代码,并且改了应用js的版本,发现还是报错,直接打开链接是这样,所以我初步认为是编码问题:因为注释全是乱码;之后我就把改动全删了,的确就恢复了,但是我之后又把一个数值60000改成了30000,但是查看页面js发现还是60000,之后再加上console.log()又是一样,...

2022-05-31 16:50:58 1706

原创 go mysql报错Error 1406: Data truncation: Data too long for column ‘content‘ at row 1

err := tx.Create(&cwsh).Error在执行Create插入语句的时候,测试环境没遇到报错,但是生产环境报了1406异常,查了一下原来是生产环境和测试环境的mysql配置不同;网络上找到的解决错误的方法是:在my.ini里找到sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_Create_USER,NO_ENGINE_SUBSTITUTION”把其中的STRICT_TRANS_TABLES,去掉,或者把sql-mode=STRICT.

2022-04-29 12:32:37 3842

原创 vagrant+virtualbox虚拟机创建全流程,问题处理以及过程讲解,初始安装不放C盘,初始化硬盘空间设置,ssh连接超时,基础镜像下载等等

vagrant+virtualbox已经用了好几年了,最近出一期安装使用全流程。首先是准备工作1:电脑系统:win10vagrant版本:1.9.7virtualbox版本:5.1.26下载地址:vagrant1.9.7+virtualbox5.1.26如果不想用我这边分享的可以去官网找:VirtualBox 虚拟器 : https://www.virtualbox.org/ Vagrant : http://www.vagrantup.com/ box(相当于基础l..

2022-04-19 13:59:02 2738

原创 go中redis模糊查询到key并且批量删除它

我们在需要删除很多的redis key的时候,我们很有可能是无法知道所有的key的但是我们可以进行模糊查询后,进行逐个删除,(当然你得知道你所有的key都是你自己用的不能删除别人用的key)。这里批量删除也就需要用到反射来进行删除,直接贴代码:func (cf *Func) DelRedisCatchBatch(keys ...string) { for _, redisKey := range keys { keysMatch, err := providers.Redis.D...

2022-04-15 16:32:49 3926

原创 go test修改后结果不变,执行go test差找不到方法的坑

go test中有缓存和找不到方法的坑

2022-04-15 14:11:21 773

原创 goland编辑器行间距配置

goland编辑器行间距配置

2022-04-15 13:51:47 148

原创 go 自定义mysql中gorm时间字段属性值为“0001-01-01 00:00:00“情况处理

我们在开发中mysql的时间字段属性一般用到的是time.Time但是做成json返回的时候时间就不是 “2022-04-13 01:26:46” 这种时间格式,导致我们使用的时候很不方便,跟前端或者其他系统接收数据都会造成麻烦。所以我们要自定义时间类型,从而能解决这个问题。晚上找到这种时间的写法后发现自己的项目用起来一个问题就是,如果时间字段值是null,它默认会把时间的写成 "0001-01-01 00:00:00" 并不是null,这时候我们就需要修改localTi...

2022-04-15 11:19:05 4599 2

原创 golang中将slice转化成map,slice中的值是struct结构

最近写代码发现go没有关于slice转map的包或者网上也没有写的靠谱的转化代码,但是现实场景中,我们很容易遇到这种问题,就是获取到的slice []struct 数据类型,我们需要将它转化成map之后被其他的代码取用,废话不多说,我们开始; 首先肯定是需要用到反射reflect进行通用化,不然的话无法试用所有的方法。直接贴代码:package mainimport ( "fmt" _ "go/types" "reflect")type User struct { ...

2022-04-14 10:14:13 1131

原创 vagrant up启动报错Timed out while waiting for the machine to boot. This means thatVagrant was unable to

今天早上vagrant up报错:一开始我启动的时候报错了网上找了一下错误原因,之后看到了这个文章:vagrant up启动虚拟机出现Time out问题时可尝试的解决_TCCTTCCT的博客-CSDN博客_config.vm.boot_timeout vagrant发现这个文章的修改太大了,直接重装vagrant+virtualbox,太麻烦。之后我就在virtualbox中手动启动,之后打开界面看错误,发现启动界面报错了:如下systemd[1] : failed to l...

2022-04-12 09:54:55 4813

原创 box镜像文件生成-生成自己已经配置好的镜像

      我们如果需要在其他机器上安装我们的virtualbox+vagrant之后,需要box镜像文件,但是之前的机器环境已经配置过的box镜像不想再重新安装一次环境软件的话,就使用到导出box镜像文件了。     操作步骤:1:进入virtualbox安装目录;2:输入vboxmanage list vms 命令;下面展示的就是你的虚拟机列表了,我只有一个,就是 work...

2018-12-11 10:22:06 670 1

vagrant_1.9.7+ VirtualBox_5.1.26

vagrant + virtualbox的组合很方便,但是他们的版本问题是很让人头疼的,我用过三年多的组合,这个是完全没有问题的,在win10上可以组合使用不会有版本兼容性问题。

2022-04-19

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除