自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

转载 git commit 错了怎么办

参考链接。

2022-10-28 15:53:32 236 1

原创 当有一pr在远程的时候的开发流程

然后将在开发分支上的提交cherry pick到一个新的将要pr的分支上。然后在开发分支完成开发之后,新建一个将要pr的分支。然后在master分支上拉一个分支。然后pull master分支。当远程pr的分支被合并之后,先切换到master分支,

2022-09-14 17:49:16 226

原创 RabbitMQ发布确认-异步确认

异步确认虽然编程逻辑比上两个要复杂,但是性价比最高,无论是可靠性还是效率都没得说,他是利用回调函数来达到消息可靠性传递的,这个中间件也是通过函数回调来保证是否投递成功,下面就让我们来详细讲解异步确认是怎么实现的。我们都知道rabbitMQ为了保证消息传递的可靠,可以在消费者和队列之间做一个持久化操作,就是消息被成功消费了,消费者就会通知队列,队列就会删除掉这条消息。那么无非是在生产者和消息队列之间加一层和之前差不多的方式就可以了,生产者生产消息要得到消息队列的确认。下图是异步确认的流程,......

2022-08-01 15:11:39 825

原创 redis中设置第二天过期(24点刷新)的方法

在写项目中的验证码部分,我要设置一天只能发5次验证码,所以记录验证码次数的数据要在一天之后过期。所以过期时间就可以通过计算一天还剩多少时间来设置。

2022-07-23 19:55:59 2090

原创 数据库面试

聚簇索引(主键索引):一般来说就是主键的索引,记录了全部的数据二级索引:一般来说就是别的字段构成的索引,一般来说只记录这条数据信息和主键,二级索引查询涉及到回表。原子性是指事务是一个不可分割的工作单位,要么全部成功,要么全部失败,就好像是一个操作一样,没有中间状态。如果不存在原子性,例如转账时如果失败,则会发生一个-100另一个账户却没有+100。那显然是不对的。事务的隔离性是指一个事务的执行不会被其他的事务干扰,就是一个事务的内部操作对并发执行的其他事务是隔离的。并发执行的事务不会互相干扰。例如:持久性

2022-06-17 00:30:16 80

原创 计算机网络面试

http是什么?一种超文本传输协议详细解释一下超文本传输协议协议就是一种行为约定规范,传输就是两点传输数据,超文本就是不只是有普通的文字还有图片啊视频啊还有超链接能从一个超文本跳转到另一个超文本。http常见的状态码200表示成功 3表示重定向 4表示客户端发送的报文有误 500表示服务器错误说说http常见的字段host指定服务器的域名 content-length 服务端回应的数据长度 content-type 告诉客户端用什么格式的数据 Accept表示自己接受什么格式的数据 content-

2022-06-16 14:09:20 222

原创 简要分析park和unpark原理,希望有人进来看看为什么

park 和 unparkpark和unpark是LockSupport里面的方法,park的中文翻译有停在这的意思,所以park方法的作用就是停下一个线程,而unpark就是唤醒线程。特点与Object的wait&notify相比wait和notify相比必须配合Object Monitor一起使用,而park,unpark则不用park&unpark是以线程为单位来阻塞和唤醒线程的,而notify只能随机唤醒一个,notifyAll只能唤醒所有,不怎么精确park&

2022-05-27 16:24:05 626 4

原创 设计模式装饰模式

快速了解装饰模式

2022-05-02 15:34:11 310

原创 排序基础——冒泡排序与选择排序

1.冒泡排序每一趟排序都把最大的数排到数组的最后,就像冒泡一样,一次一次往前挪动,通过两层循环,第一层循环了数组长度-1次,第二层循环了数组长度-1再减去i是个效率挺低的算法,时间复杂度是O(n²),是交换排序,是稳定排序。public static void mpsort(int[] nums) { for (int i = 0; i < nums.length - 1; i++) { for (int j = i; j < nums.length - 1; j

2022-03-31 12:12:27 1215 1

原创 TCP拥塞控制

tcp拥塞控制的方法

2022-03-20 12:57:59 3999

翻译 设计模式之观察者模式

观察者模式也是我们非常常用的设计模式之一我们先举个例子来初步认识一下观察者模式当我们在打团队游戏时,当你受到攻击需要队友帮忙时该怎么办?这时候就需要给你所有的队友发送一条你正在被攻击的消息。所有的队友会根据你发送的消息作出相应的动作。比如有团队意识来帮你,或者不帮你继续玩自己的。这里面的队员就是该设计模式名字中的观察者。那么受到攻击的自己的是什么呢。被观察者?不,准确的我们称之为目标或者主题。所以整个流程大概就是:当目标(主题)的状态发送改变时就会通知观察者,观察者根据自己的情况做出相应的动作。

2021-12-02 16:01:10 153 1

翻译 设计模式之代理模式(一)

设计模式之静态代理模式

2021-12-02 13:22:47 146

原创 AOP中的一些术语

AOP术语class User { add(); update(); select(); delete();}1、连接点类中那些方法可以被增强,这些方法就被称为连接点。在User类中其中四个方法都可以被增强,所以他们都是连接点。2、切入点实际上被增强的方法被称为切入点。3、通知(增强)实际增强的逻辑部分被称为通知(增强),就是加强发放的代码通知有多种类型前置通知后置通知环绕通知异常通知最终通知4.、切面把通知应用到切入点的过程就叫做切面,是一个动作。...

2021-11-13 15:42:31 338

原创 遍历查找Cookie的方法

遍历查找Cookie的常用方法Cookie iWantCookie = null; for (Cookie cookie : cookies) { if ("key2".equals(cookie.getName())) { iWantCookie = cookie; break; } } if (iWantCookie != n

2021-10-14 22:09:07 803

原创 java内部类(二)

成员内部类可以添加权限修饰符,但不加static修饰的定义在外部类的成员中的内部类可以访问外部类所有的成员和方法静态内部类与成员内部类一样但加static来修饰,可以访问外部类的静态成员,但不可以访问外部类的非静态成员...

2021-09-16 15:30:03 65

原创 java内部类(一)

内部类类的五大组成:属性,方法,构造器,代码块,内部类内部类一般没有构造方法内部类的分类:定义在外部类局部位置上(比如方法内):1)局部内部类(有类的名字)2)匿名内部类(没有名字,重点)定义在外部类成员(属性或者方法)的位置上的:1)成员内部类(没有用static修饰)2)静态内部类(使用static修饰)局部内部类例:class outer {private int x = 10;public void fun1() { //局部内部类通常定义在方法中 cl

2021-09-16 15:21:45 83

空空如也

空空如也

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

TA关注的人

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