自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

FindHuni的博客

一脚一脚踏出来的路,走的是最踏实

  • 博客(93)
  • 资源 (6)
  • 收藏
  • 关注

原创 至每一位在努力奋斗的人-----复旦女生的高三生活

这个文章高三看了N遍,给我最多的感悟是,你只要努力,无论最后怎样,真的会很有收获,工作也一样,要保持不断的学习,才能在技术领域里不被淘汰掉。我不知道应该怎样写,准确地说是不知道用怎样的文字把这一年的心情完整地串起来,让它们如绚丽的水晶不失原味地挂在那儿,让你们分享,让你们明白。在这个热得要命的八月写下第一个字符的时候,我突然注意到窗外成片绽放着许多不知名的小花,红的,黄的,粉白的,澄蓝的,...

2019-07-15 17:09:55 472 4

原创 记录一次优化过程

最近,优化一次数组去重的操作,虽然比较简单,但是还是记录下ex:1//数组去重func RemoveRepByLoop(slc []int) []int {result := []int{}for i := range slc { flag := true for j := range result { if slc[i] == result[j] { flag = false break } } if flag { result =...

2021-04-25 19:22:39 307

原创 m1芯片在goland 工具中项目出现不能debug情况

最近查项目有个bug,于是想着把项目在本地debug启动,然后定位问题,但是 居然debug 启动项目 ,控制台出现错误:rosetta error: failed to allocate vm space for aot ,于是我为了确定是项目问题还是debug 问题,不debug 启动,项目可以正常启动,于是想着肯定是软件问题,然后各种百度查询啊,结果发现大部分人出现这个问题,都说没有办法解决,我自己也尝试几张办法解决,但是确实不行,唉,果然 m1芯片这个目前来说,好多工具和软件都不支持,记录下这个..

2021-03-04 16:17:37 2080 8

原创 解决mac m1芯片安全隐私没有任何来源选项

新买的mac 搭载m1芯片 ,在安全隐私里面 没有任何来源 这个选项,导致我之前的很多软件 投送过来 无法安装使用,要解决这个问题其实很简单1。打开终端,输入命令:sudo spctl --master-disable2。需要输入电脑开机密码,然后回车3.再去安全隐私里面,就可以看到任何来源选项了...

2021-02-19 17:52:24 10308 2

原创 2021新开始

不知不觉,已经从事这个行业4年时间了,从java转go,不变得思想,不变得业务,突然觉得止步如此,不知如何是好,也不知道自己还能热爱几年这个行业呢

2021-01-26 06:51:30 162

原创 关于etcd中集群和zookeeper集群的leader选举总结记录

首先,这两者的选举都是采用过半选举的机制(因此,一般选择奇数布置)一: etcd集群中的raft算法如何负责选举?(以三个节点为例子) 1.首先,在三个节点启动的时候,首先进入到candidate(候选者)状态,然后进行投票选举,这个时候,所有的节点都会在本地创建一个term的属性,并初始化为0.表示还没有开始选举投票,然后每个节点都会设置一个随机数的倒计时(150~300ms),当这个倒计时结束的时候,第一个倒计时结束的节点会率先发起投票,并且投票给自己即(vote = 自己本身)的投...

2020-12-24 15:48:05 710

原创 k8s基础知识记录

基本概念: k8s是docker容器用来编排和管理的工具.注:(管理多主机上的Docker容器的工具)主要节点: Master和NodeMaster主要提供 API server、Scheduler、Controller组件Node主要存放每一个docker.各组件的作用:API server(Master) 主要职责是认证和授权,提供了http Rest 接口的关键服务过程,是k8s里所有资源的增删改查等操作的唯一入口,也是集群的入口进程.Contro...

2020-11-26 15:22:20 135

原创 记录~Centos7 安装Docker

1.安装需要的软件包 命令: yum install -y yum-utils device-mapper-persistent-data lvm2 (如果要选择确认,直接输入 y 就ok) 2.设置yum源(一般选用阿里就行,国内的你懂得) 命令:yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3.先查看所...

2020-11-06 17:17:26 117

原创 2020-10-24

今天写博客,听说有勋章哦,不知道发一个类似于朋友圈的会有没有,期待

2020-10-24 22:56:08 116

原创 记录--虚拟机Centos7安装redis

Centos7 安装Redis详细步骤 准备工作: 在虚拟机中装一个Centos7开始安装redis (我采用的是wget命令)1.1 下载wget 命令 yum -y install wget1.2 下载redis安装包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz(版本自己选择)1.3 解压安装包 tar -zxvfredis-4.0.6.tar.gz1.4 安装g...

2020-09-28 17:22:49 169

原创 定时清理mysql表数据

因为我们开发的系统,需要记录操作日志,短短的时间内,整个日志表就会有很多数据进来,有些数据基本没有啥用了 ,于是需要写一个定时任务来定期处理这些数据(业务要求数据只保留三个月),所以我开始第一时间想到两个方案: 一是在代码中写一个定时器,每天12点自动删除日志表中的数据 二是使用mysql 自带的事件, 最后综合考虑下 还是使用mysql的事件 因为代码少,并且是mysql自带的,那处理mysql数据再好不过了.下面记录下,真的超级简单,网上有很多版本,什么写一个存储过程, 在写一个事件定时调存储过程删..

2020-09-09 10:03:43 4327 4

原创 docker--知识梳理

我们在学习docker的时候,首先要知道docker的三大要素: 1. 镜像 2. 容器. 3.仓库Docker 包括三个基本概念:镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的..

2020-08-11 09:10:45 142

原创 docker--运行hello-world并安装mysql(mac版本)

上一次安装完docker之后,我就在我的mac上也安装了一个docker ,果然我还是喜欢在mac系统上操作,由于想安装一个mysql在上面,这样以后本地做一些demo就方便多了,如是动手在docker上安装了mysql,也是一把辛酸泪,不过做一些新鲜事情还是蛮不错的.比较享受这种出现错误,解决错误的过程,下面是我学习的整个过程, 一 :小试牛刀~~安装helloworld准备工作: 安装好了docker,并启动 1.首先查看我们docker安装了哪些镜像 ...

2020-07-18 15:55:45 403

原创 开篇--docker学习

终于有时间决定系统从头到尾学习docker了,之前一直这里弄一点 ,哪里弄一点,不会啥就去查然后解决掉 这一次觉得从前到后系统学习了,写这个一是告诉自己不要懒 ,,二是会在这个系列记录自己学习过程,加油,但愿我坚持到带最后......

2020-07-14 11:40:03 138

原创 JAVA初级工程师面试36问(完结)

第三十一问: 说一下线程中sleep()和wait()区别? 1 . sleep()是让正在执行的线程主动让出CPU,当时间到了,在回到自己的线程让程序运行。但是它并没有释放同步资源锁只是让出。 2.wait()是让当前线程暂时退让出同步资源锁,让其他线程来获取到这个同步资源在调用notify()方法,才会让其解除wait状态,再次参与抢资源。 3. sleep()方法可以在任何地方使用,而wait()只能在同步方法或同步块使用。...

2020-06-29 14:47:01 5065 17

原创 GO开发--记录调用阿里云短信服务

今天,我们要做一个很常见的功能,就是在用户修改密码时候给手机发送短信验证码,因为我们用的是阿里云的短信,所以当时想着直接上去拿到api 就可以很快搞定了,但是中间出现个小插曲,所以特意记录下来,首先我们登陆阿里云平台1.找到你要用对应的短信接口,2.然后选择你要使用的语言 ,3.然后在看中间的参数.我使用的是go 语言,所以选择go按照上图所说我填好了必要参数,为了更直观,我把代码直接copy到我的工具里面,想着demo通了 就可以直接使用了,...

2020-06-17 14:48:03 1494

原创 JAVA初级工程师面试36问(五)

第二十五问:请简述动态代理的几种实现方式,它们分别是什么以及区别? 在java中,动态代理有两种主要的实现方式,分别为:JDK 动态代理和 CGLIB 动态代理.JDK 动态代理就是基于 JDK 实现的代理模式,主要运用了其拦截器和反射机制,其代理对象是由 JDK 动态生成的,而不像静态代理方式写死代理对象和被代理类。JDK 代理是不需要第三方库支持的,只需要 JDK 环境就可以进行代理,使用条件:1.被代理的对象必须要实现接口;(可以直接说这一句,)2.使用Pro...

2020-06-16 11:52:03 533 1

原创 JAVA初级工程师面试36问(四)

在性能测试中发现cpu占用过高应该如何进行分析? 1.查找进程 top查看进程的占用资源情况,可以很明显看出java的那个进程占用的过高cpu 2. 查找线程 使用 top -H -p <pid> 查看线程占用情况 3.查找java的堆栈信息 将线程id转换成十六进制 #printf %x 15664 ...

2020-06-11 09:33:52 615

原创 JAVA初级工程师面试36问(三)

第十三问:描述一下JVM加载class文件的原理机制?答:JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要的Java运行时系统组件,它负责在运行时查找和装入类文件中的类。类的加载是指把类的.class文件中的数据读入到内存中,通常是创建一个字节数组读入.class文件.第十四问: 谈谈你对抽象类和接口的异同点?答:1.抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。 2.一个类如果继承了某个抽象类或者实现了某...

2020-06-09 09:43:16 605 2

原创 JAVA初级工程师面试36问(二)

第七问: 请简单描述你对Ioc(控制反转)的理解? 一个类需要用到某个接口的方法,需要将类A和接口B的实现关联起来,最简单的方法是在类A中创建一个对于接口B的实现类C的实例,但是用这种方法显然两者的依赖太大.稍微好一点的方式是使用工程模式,实例类通过工厂类创建,减少了类A与接口B的实现类C的依赖,但是创建工厂类也不是很方便.而IOC相当于一个大的bean工厂,使用IOC后,只在类A中定义好用于关联接口B的实现方法,将类A,接口B和接口B的实现放在IOC容器中,通过一定的配置由容器来...

2020-06-08 14:06:47 804

原创 JAVA初级工程师面试36问(一)

前几天,一个老家的弟弟正在找java初级开发工程师的岗位,问我一般会问什么问题? 第一时间听到这个,我在想:what? 除了刚开始找工作的第一年面试几家公司问了一些基础项东西,后面两家公司基本都是内推进去的,问的问题也是偏项目,偏实际,理论大概也没有问什么,当然,作为一个爱回答问题的我,是肯定要给他指明方向的,于是 ,我便综合各方面给他说了一些东西,同时记录下来,万变不离其宗.基础知识是学习一个新东西和升华一个东西必不可少的条件. 第一问: 请说一下String和StringB...

2020-06-05 10:14:03 1134

原创 记录Redis实现分布式锁必须遵循原则

一般在分布式项目中,如何保证数据的完整性以及安全性是我们必须要考虑的,基于这个原因,就出现了分布式锁.一般提到锁 基本就是为了处理数据的安全问题.今天记录下关于分布式锁. 分布式锁一般有三种实现方式: 1.数据库的乐观锁 2.Redis实现分布式锁 3.Zookeeper的分布式锁.今天主要是讲述第二种,基于Redis实现分布式锁一个分布式锁是否可用,它的前提需要以下四个条件: 1.无论什么时候锁只能是一个客户端拥有(互斥性) 2.无论什么时候不能出...

2020-06-05 09:10:55 641

原创 mac如何配置git并关联上github

一直听说mac 开发很舒服,所以三月份果断入手一台mac,开始各种不适应(吐槽,嫌弃) 现在,真香啊,因为一直忙着项目的开发,很多东西没有来弄,因为公司使用的是svn 所以一直没有配置git相关的,今天突然想起来这个事情,就查资料,解决问题最后一步步配置git并关联上github,(其实主要是想关联上我的github)所以记录一下,防止下一次忘记了,果然我还是不爱配置环境这些东西. 假如你是一个没有配置git的mac本 ,可以参考我的步骤哦!!!第一步: 安装gi...

2020-05-27 13:46:26 2586 1

原创 记录开发中遇到的问题之~如何去掉数组中的重复元素

最近,在做一个根据角色展示所属的建筑列表,因为某个用户可以同时有多个角色,而每个角色又可以分别管理不同的建筑,所以在实际开发中出现,一个用户登录之后,会根据角色来展示一个建筑列表,所以就会出现重复的建筑出现,所以需要对结果数组进行去重.func ArrayDup(items []vo.VoBuilding) []vo.VoBuilding { result := make([]vo.VoBuilding, 0) temp := map[int64]interface{}{} for _, ...

2020-05-21 17:05:04 166

原创 面试常问之~悲观锁和乐观锁

我们在开发中,有时候常常去实现一些业务的功能实现,往往忽略了很多源头的东西,这也是我身边有很多业务超级强的人,但是一旦跳槽以及面试会被一些东西卡掉,你要说他真的不知道吗?其实不是,只是很多东西,我们常用,但是没有深入去了解或者不能再面试时候给出官方的解释(这一点我真的很烦)下面就悲观锁和乐观锁给出我的理解,当然我也是面试经常会被问到,我一般都是按照自己理解去回答 ,从来不去官方解释(每个人不一样,只要大家觉得适合自己的就行.) 一般面试官会从和几个点问你: 1....

2020-05-19 10:58:57 244

原创 uber关于go语言规范

本文老子github上的Uber对于go语言的规范,从中我们可以避免在开发过程中的坑.地址:https://github.com/xxjwxc/uber_go_guide_cnGo 语言编码规范Uber是一家美国硅谷的科技公司,也是 Go 语言的早期 adopter。其开源了很多 golang 项目,诸如被 Gopher 圈熟知的zap、jaeger等。2018 年年末 Uber 将内部的Go 风格规范开源到 GitHub,经过一年的积累和更新,该规范已经初具规模,并受到广大 ...

2020-05-16 09:12:32 480

原创 GO和JAVA实现二分查找和交替打印奇偶数

二分查找和交替打印100以内的奇偶数 二分查找GO实现,与JAVA基本没有区别: GO:func BinarySearch(a []int, v int) int { n := len(a) if n == 0 { return -1 } low := 0 high := n - 1 for low <= high { mid := (low + high) >> 1 if a[mid] == v { return mid }...

2020-05-13 10:02:36 228

原创 GO和JAVA如何处理两个数组中的并集和交集

最近,在项目中碰到这样一个问题,我们在查看某个模块内容的是否,需要获取该角色下所有用户权限的集合,而某个角色下的用户权限不一样,那么我们需要去得到所有用户拥有的权限的一个并集,根据这个整理了关于go和java如何获取2数组的并集以及交集的小例子.GO实现并集:func main(){ a1 := []int{1,2,3,4,5} a2 := []int{2,3,4,5}...

2020-05-06 18:38:40 524 1

原创 go与java实现冒泡排序

众所周知,在算法里面,冒泡排序算是很经典的一个了,通常很多面试都会让我们手写冒泡排序,那么我们在写这个代码之前首先要了解什么是冒牌排序.知道其原理,这样我们才能用代码的方法来实现它.下面 我将用java和go 分别来实现一个简单的冒泡排序.冒泡排序算法的原理如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素做同样的工作,从开始第一对到...

2020-05-04 10:57:19 181

原创 GO语言学习之-数组和切片(二)

之前,在一里面讲过关于数组以及切片的区别,都知道 数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性。引言:例如:func sumArray(number [5]int) int{ sum := 0 for _, value := range number{ sum = sum + value } return...

2020-04-30 14:36:30 242

原创 GO之认证与授权

一般公司项目比较多,比较分散,但是对于都是公司的用户来说,用户数据一般是共享的,所以集成统一认证与授权的功能一般就必不可少,这样可以实现一个用户,分配一点权限,能访问公司很多项目. 一般的认证与授权方案有 OAuth、分布式 Session、OpenID 和 JWT 等.目前常用的是OAuth2,其重点在于为Web应用程序、桌面应用程序、移动设备以及室内设备的授权流程提供简单的客户端开...

2020-04-29 15:29:06 2327

原创 GO之redis基本操作(一)

在实际项目中,我们除了用到关系型数据库 ,其次用的最多就是非关系数据库, 一般都是作为缓存使用, 其主要目的是缓解数据库压力,其次,从缓存中拿数据是非常快的,这里我们主要介绍用的最多的 redis, 那go 是如何操作redis呢? 一.连接数据库package mainimport ( "fmt" "github.com/garyburd/redigo/red...

2020-04-29 14:40:22 572

原创 GO的利器之---channel

在GO语言中,channel是一个重要特性,同时也是区别与其它语言的不同之处,一个channel使得并发编程变得简单容易有趣. 在学习channel之前,我觉得我们有必要百度百科一下进程通信,因为channel其实就是一个处理通信过程的一个东西,首先我们要知道进程通信大致上可以分为低级进程通信和高级进程通信.(具体了解 百度百科讲的已经是很详细了.)低级通信由于进程的互...

2020-04-28 11:59:09 523

原创 go如何发送邮件

写在前面:本人从去年开始负责公司go项目,如果某些地方解释不对,请大佬多多批评,一定虚心接受并学习改正. 昨天,我们用java写了一个定时发送邮件的功能,因为本人目前在公司负责java和go的项目,所以,一般java实现的功能,我本人都喜欢换语言来实现一遍,一是为了比较他们的不同之处,二是防止手生,多写代码,毕竟是有好处的,下面我就将我自己写的关于go实现邮件发送功能的demo...

2020-04-27 10:29:01 937

原创 java实现定时发送邮件

前几天,需要做一个功能就是 客户使用我们公司的设备的时候 ,每天固定一个时间点 ,我们定时发送该设备的数据到客户邮箱,让客户了解自己设备的一个情况,由于代码不能上传,就把当时我开始搭建开发而写的一个demo记录下来,实现的原理是一样的,非常之简单. 一.创建一个springboot的项目 项目结构图:首先,我们先测试邮件发送 controller层...

2020-04-26 15:33:40 5115 4

原创 go如何使用日志

众所周知,在一个项目中,日志是非常非常重要的,因为有时候我们找错误,发现问题,处理问题等等,其中最重要的一点就是依靠日志,所以一般一个项目完善不完善,从日志的设置上就可以大概有所判断,日志好不好,我想大家心知肚明.好了,废话不多说,我们来看下Go语言中的日志情况.(本文在翻译zap日志库中结合自己写的代码测试而出) Go语言提供的默认日志包是https://golang.org/p...

2020-04-24 10:59:20 1009

原创 go的web框架Iris和gorm搭建基础版本的增删改查

go语言 有很多优秀的web框架,于是乎,就自己动手 从零开始搭建一个demo,除了有些东西下载比较麻烦,其它的都很好弄,下面贴出我搭建的工程.在开始项目之前需要下载并安装好go的环境以及iris还有gorm的环境.一:首先贴出我的项目结构图:二:各分层情况代码 controlle层package controllersimport ( "github.com...

2020-04-23 16:29:02 2825 14

原创 带你玩转go语言中的json

一:标准的序列化和反序列化type Student struct { Id int64 Name string Age int64}func main() { s1 := Student{ Id: 1, Name: "红孩儿", Age: 18, } //序列化 b, err := json.Marshal(s...

2020-04-22 15:19:12 313

原创 go语言中的defer关键字

在Go语言里面 有一个关键字 我们经常会碰到 就是 defer ,关于defer我们需要记住以下几点:1.defer语句会在该函数结束的时候被调用,即使后面的语句运行时出现异常了defer语句仍然会被执行。2.如果defer语句中引用了参数,则该参数的值将是程序到defer这一行的时候的值,而与后面的语句没有关系。因此,defer通常用来释放函数内部变量。在看下面的代码:fu...

2020-04-22 11:40:31 386

原创 go语言中的关于结构体转map[string]interface{}的一些小坑

由于本人刚用go 开发项目不久,过程中出现很多问题 ,我都是一点点摸索出来并解决的,如果出现因为解决了问题,但是解释的不是很对,欢迎大佬指正,批评,一定虚心接受,并改正,慢慢学习.在使用go开发的过程中,经常需要将结构体转换成map[string]interface{},这中间有一个问题需要我们注意,就是Go语言中的json包在序列化空接口存放的数字类型(整型、浮点型等)都会序列化...

2020-04-15 09:28:23 2536

获取区域下的递归查询的所有节点信息

此功能针对递归调度,如何处理上下级问题,通过对结构体的定义以及对其深度处理获取相应的结构数据返回前端组装,针对自己记录使用, 其它人不要下载

2020-08-19

boot2docker.zip

win10家庭版本安装docker 出现的缺少boot2docker iso 导致安装失败,此iso在外网,不好下载,只好提前下载下来

2020-07-16

iris_demo.zip

go的web框架Iris和gorm搭建基础版本的增删改查的简单实现,下载项目解压放到src文件下,然后直接goland打开配制好数据库 就可以运行

2020-06-22

对存储函数递归的查询

此函数是根据含有上下级关系的字段根据某个子级字段递归查询出所有符合条件的数据,通过此函数可以复用在整个项目中任何想调用的地方

2020-05-14

springboot实现增删改查

适合新手的简单的springboot实现增删改查,可以通过crud 更加了解springboot构建项目的好处

2020-05-13

jdk-8u161-windows-x64.zip

jdk-8u161-windows-x64

2020-04-10

空空如也

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

TA关注的人

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