自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 VirturalBox + Vagrant

VirturalBox + Vagrant下载VirturalBox下载安装Vagrant初始化centos/7运行连接下载VirturalBoxhttps://www.virtualbox.org/下载安装Vagranthttps://www.vagrantup.com/初始化centos/7$ vagrant init centos/7 运行$ vagrant up连接vagrant ssh...

2021-08-10 02:58:14 157

原创 HashMap的put方法

根据key通过哈希算法与与运算得出数组下标如果数据下标位置元素为空,则将key种value封装为Entry对象(JDK7中是Entry对象,JDK8中的Node对象),并放入该位置如果数组下标位置元素不为空,则要分情况讨论如果是JDK1.7,则先判断是否需要扩容,如果要扩容就先进行扩容,如果不用扩容就生成Entry对象,并使用头插法添加到当前位置的链表中如果是JDK1.8,则会先判断当前位置上的Node的类型,看是红黑数Node还是链表Node1.如果是红黑数Node,则将key和value封装.

2021-06-24 22:49:21 144 3

原创 ArrayList和LinkedList区别

底层数据结构不同,ArrayList要基于数组实现的,LinkedList底层是基于链表实现的由于底层数据结构不同,他们所适用的场景也不同,ArrayList更适合随机查找,LinkedList更适合删除和添加,查询添加删除的时间复杂度不同另外ArrayList和LinkedList都实现了List接口,但是LinkedList还额外实现了Deque接口,所以LinkedList还可以当作队列来使用...

2021-06-24 16:43:15 100

原创 Nio启动剖析

//1. netty中使用NioEventLoopGroup(简称nio boss线程)来封装线程和selectorSelect selector = Selector.open();//2. 创建NioServerSocketChannel 同时会初始化它关联的handler以及为原生ssc存储configNioServerSocketChannel attachment = new NioServerSocketChannel();//3. 创建NioServerSocketChannel时

2021-06-24 16:20:08 128

原创 生成图片验证码

生成图片验证码需求分析代码后端需求分析点击验证码图片,改变验证码图片点击获取验证码,发送验证码代码后端@RestController@RequestMapping(value = "/verify/")@ApiModel("验证相关接口")public class VerifyController { @Autowired private VerifyCodeBiz verifyCodeBiz; @ApiOperation(value = "获取图片验证码

2021-04-20 19:58:52 173

原创 自上而下与自下而上

自上而下和自下而上策略的最关键区别在于,前者是一种分解策略而后者是一种合成策略。前者从一般性的问题出发,发问题分解成可控的部分。后者从可控的部分出发,去构造一个通用的方案。...

2018-11-22 23:02:01 9568

原创 你无须马上解决整个设计难题

你无须马上解决整个设计难题,一旦被卡住了,那么请记住回过头来时有一处地方需要做决策,但眼下你还没有足够的信息来解决这个问题。为什么在自己还缺少经验时一定要去做出一些不好的设计,而不等到日后自己经验丰富时再做出更好的决策呢?有些人如果在一个设计循环过后没有把所有的问题都解决,就会感到很不舒服,实际上如果你尝试了一些设计方案,但没有很好的解决问题时候,更自然的方式是让那些问题留在未解决的状态,等到你拥...

2018-11-22 22:53:54 210

转载 IntelliJ IDEA For Mac 快捷键

Mac键盘符号和修饰键说明⌘ Command ⇧ Shift ⌥ Option ⌃ Control ↩︎ Return/Enter ⌫ Delete ⌦ 向前删除键(Fn+Delete) ↑ 上箭头 ↓ 下箭头 ← 左箭头 → 右箭头 ⇞ Page Up(Fn+↑) ⇟ Page Down(Fn+↓) Home Fn + ← End Fn + → ⇥ 右制表符(T...

2018-11-22 22:17:54 117

转载 Maven构建的生命周期详解

以下引用官方的生命周期解释https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html:一、构建生命周期基础:Maven基于构建生命周期的中心概念。这意味着构建和分发特定工件(项目)的过程被明确定义。对于构建项目的人员,这意味着只需要学习一小堆命令即可构建任何Maven项目,POM将确保他...

2018-11-14 19:31:39 207

转载 maven快照与发布,RELEASE与SNAPSHOT

发布RELEASE用户A将代码打包发布到RELEASE仓库,具体操作参考上篇文章。用户B使用时,需要在pom.xml添加JAR包的依赖坐标。如果用户A将版本从1.0升级为2.0,用户B使用时也需要同时在pom.xml中修改坐标版本。但是RELEASE是稳定版本,是经过测试以后才会发布的,通常不会频繁的升级版本快照SNAPSHOTSNAPSHOT是不稳定版,可能是还在开发中的版本,在开发...

2018-11-13 15:29:31 421

转载 maven的snapshot和release

  在使用maven过程中,我们在开发阶段经常性的会有很多公共库处于不稳定状态,随时需要修改并发布,可能一天就要发布一次,遇到bug时,甚至一天要发布N次。我们知道,maven的依赖管理是基于版本管理的,对于发布状态的artifact,如果版本号相同,即使我们内部的镜像服务器上的组件比本地新,maven也不会主动下载的。如果我们在开发阶段都是基于正式发布版本来做依赖管理,那么遇到这个问题,就需要升...

2018-11-13 15:24:15 2769

转载 Redis持久化

Redis数据持久化通过两种方式RDB和AOF,RDB方式会根据配置的规则将内存中的数据持久化到硬盘上,AOF则是在每次执行写入命令后将其记录下来。RDB方式,当符合某种规则时,会将内存中的数据生成一份副本存储到硬盘上,这个过程称为“快照”。Reids会在以下几种情况下对数据进行快照根据配置规则进行自动快照;快照的规则在配置文件中:每个快照条件独占一行,他们之间

2016-09-06 10:39:24 162

空空如也

空空如也

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

TA关注的人

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