- 博客(85)
- 资源 (2)
- 收藏
- 关注
原创 explain
explainexplain是什么?能干什么?explain中的列字段详解id列功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入explain是什么?能干什么? explain命令是
2021-12-23 21:22:09
750
原创 行为型模式之策略模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 策略模式用于算法的自由切换和扩展,它是使用较为广泛的设计模式之一,策略模式对应于解决某一问题的一个算法族,允许用户从该算法族中任选一个算法解决某一个问题,同时可以方便地更换算法或者增加新
2021-06-20 11:25:35
1641
原创 行为型模式之装饰模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 装饰模式是一种用于替代继承的技术,它通过一种无须定义子类的方法来给对象动态增加职责,使用对象之间的关联关系取代类之间的继承关系。装饰模式降低了系统的耦合度,可以动态增加或删除对象的职责,
2021-06-19 19:32:21
417
原创 行为型模式之访问者模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 访问者模式是一种较为复杂的行为型设计模式,它包含访问者和被访问元素两个主要组成部分,这些被访问的元素具有不同的类型,且不同的访问者可以对其施加不同的访问操作。访问者模式使得用户可以在不修
2021-06-13 13:16:32
1543
1
原创 行为型模式之责任链模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240责任链模式目录1 行为型模式2 责任链模式结构与实现2.1 责任链模式结构1 行为型模式 在软件系统运行时对象并不是孤立存在的,它们可以通过相互通信协作完成某些功能,一个对象在运行时也
2021-06-06 11:52:08
952
1
原创 结构型模式之桥接模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 桥接模式是一种很实用的结构型设计模式,如果系统中的某个类存在两个独立变化的维度,通过桥接模式可以将这两个维度分离出来,使两者可以独立扩展。桥接模式用一种巧妙的方式处理多层继承存在的问题
2021-06-06 09:58:13
1094
2
转载 HashMap源码详细解析
HashMap源码详细解析1、重新认识HashMap1.1、什么是HashMap?1.2、长啥样?1.3、HashMap特点2、 知其所以然----撸源码2.1、 从类注释开始,能够掌握整个HashMap大致框架2.2、初始化2.1.1、构造方法解析2.2.2、负载因子、阈值深度解析2.3、新增2.3.1、新增源码分析:2.3.2、扩容2.3.3、链表树化2.3.4、红黑树拆分、链化2.4、删除2.5、查找2.6、遍历1、重新认识HashMap1.1、什么是HashMap?HashMap底层基于散列(
2020-08-23 10:05:41
555
原创 二叉树的遍历以及笔试题
本篇介绍二叉树最常见的三种遍历方式:先序、中序和后序遍历方式。1、定义 二叉树是由3个基本单元组成:根节点、左子树和右子树。因此,若能依次遍历这三部分,便是遍历了整个二叉树。例如从L、D、R分别表示遍历左子树、访问根节点和遍历右子树,则可有DLR、LDR、LRD、DRL、RDL、RLD这6种遍历二叉树的方案。若限定先左后右,则只有前3种情况,分别称为先(根)序遍历、中(根)序遍历和后(根)序遍历。基于二叉树的递归定义,可得下述遍历二叉
2020-08-17 23:39:43
10227
原创 SpringBoot自动配置源码走读
Spring所拥有的强大功能之一就是可以集成各种开源软件。但随着互联网的高速发展,各种框架层出不穷,这就对系统架构的灵活性、扩展性、可伸缩性、高可用性都提出了新的要求。随着项目的发展,Spring慢慢地集成了更多的开源软件,引入大量配置文件,这会导致程序出错率高、运行效率低下的问题。为了解决这些状况,Spring Boot应运而生。但Spring Boot本身并不提供Spring的核心功能,而是作为Spring的脚手架框架,以达到快速构
2020-08-17 13:18:01
1539
4
原创 交换排序(冒泡排序、快速排序)
1、冒泡排序1.1、概念冒泡排序是通过对排序序列从前向后(从下标较小的元素开始)、依次比较相邻元素的值,若发现逆序则交换,使较大的元素逐渐从前移向后部,就像水底的气泡一样逐渐向上冒。1.2、基本思想设有n个待排序的记录。首先将第一个记录的值和第二个记录的值进行比较,如果逆序,则交换两个值。然后比较第二记录和第三个记录的值。依次类推,直至第n-1个记录和第n个记录的值进行比较为止。上述过程称作第一趟起泡排序,其结果使得值最大的记录被安置到最后一个记录的位置上。然后进行第二趟起泡排序,对前n-1个记
2020-08-16 14:11:54
852
原创 微信小程序授权登录、绑定手机号(接口+小程序)
微信小程序授权登录、绑定手机号含接口和小程序1、小程序授权登录1.1、小程序端本篇博客主要为了记录小程序授权登录和绑定手机号功能的实现,包含小程序端和API(java语言开发)。1、小程序授权登录1.1、小程序端...
2020-08-10 07:26:11
16714
1
原创 初识ZooKeeper及其实战
初识ZooKeeper1、初识ZooKeeper1.1、ZooKeeper是什么?1.2、特点1.3、数据结构1.4、应用场景2、ZooKeeper安装2.1、下载安装2.2、配置参数解读3、ZooKeeper内部原理3.1、选举机制3.2、节点类型3.3、结构体3.4、监听器原理3.5、写数据流程4、ZooKeeper实战4.1、分布式安装部署4.2、启动三台机器上的zookeeper并查看状态4.3、客户端命令行操作4.4、API应用4.5、监听服务器节点动态上下线案例4.6、案例GitHub地址:1
2020-08-06 12:01:05
736
1
转载 LinkedList 源码深度解析
LinkedList源码解析一、什么是LinkedList?一、什么是LinkedList? LinkedList同ArrayList一样都是List接口的实现类,它与ArrayList底层基于动态数组实现不同,它的底层实现为双向链表。链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑是通过链表中的指针链接次序实现的。链表由一系列结点组成,结点可以在运行时动态生成。每个节点包括两部分:一个是存储元素的数据域,另一个是存储
2020-08-05 20:17:38
180
转载 ArrayList 源码深度解析
ArrayList源码解析一、为什么要用ArrayList?ArrayList是什么?二、初识ArrayList类中的成员变量三、ArrayList类的构造方法一、为什么要用ArrayList?ArrayList是什么? 我们用数组来存放一组类型相同的变量,数组是一种顺序存储的线性表,所有元素的内存地址都是连续的,但它有一个致命的缺点:无法动态修改容量,ArrayList解决了这个问题,它使用Object数组存储数据,当容量不够时可以
2020-08-05 17:39:46
182
原创 RabbitMQ的使用及其支持的消息类型
RabbitMQ的使用及其支持的消息类型1、RabbitMQ的初使用1.1、创建一个用户1.2、创建虚拟主机1.3、绑定虚拟主机和用户2、RabbitMQ支持的消息模式2.1、AMQP协议的回顾2.2、官方RabbitMQ所支持的消息模式2.3、在使用RabbitMQ时,我们会先创建一个用户,然后创建一个虚拟主机,给用户添加权限。1、RabbitMQ的初使用1.1、创建一个用户上面的Tags选项,其实是指定用户的角色,可选的有以下几个:超级管理员(administrator)可登陆管理控制
2020-08-04 23:57:08
4798
原创 初始RabbitMQ
初始RabbitMq1、什么是RabbitMQ?2、RabbitMQ在Windows中的安装:2.1 Erlang的安装2.2 RabbitMQ的安装2、RabbitMQ在Windows中的安装: MQ(Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据机构。指把要传输的数据(消息)放在队列中,用队列机制来实现消息传递——生产者产生消息并把消息放入队列,然后由消费者去处理。消费者可以到指定队列拉取消息,或者订阅
2020-08-04 17:24:14
576
原创 Linux常用基本命令
Linux常用基本命令目录1、帮助命令1.1、man 获得帮助信息1、帮助命令1.1、man 获得帮助信息1.基本语法man[命令或配置文件] (功能描述:获得帮助信息)2.显示说明3.实例(1) 查看ls命令的帮助信息...
2020-06-28 07:45:32
659
原创 行为型模式之模板方法模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 模板方法模式是结构最简单的行为型设计模式,它是一种行为模式,在其结构中只存在父类与子类之间的继承关系。通过使用模板方法模式可以将一些复杂流程的实现步骤封装在一系列基本方法中,在抽象父类中
2020-06-26 19:01:51
473
原创 行为型模式之观察者模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 策略模式用于算法的自由切换和扩展,它是使用较为广泛的设计模式之一,策略模式对应于解决某一问题的一个算法族,允许用户从该算法族中任选一个算法解决某一个问题,同时可以方便地更换算法或者增加新
2020-06-26 13:11:50
746
原创 结构型模式之代理模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240 代理模式是常用的结构型设计模式之一,当无法直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,所访问的真实对象与代理对象需要实现相同的接
2020-06-25 21:17:04
709
原创 忘记了root账户密码,如何找回
1、启动Linux,见到下图,在3秒钟之内按下回车2、按下回车就可以进入下图3、再按下e键就可以进入编辑页面如下图4、移动到下一行,选择最新的内核,再次按e键5、然后在编辑界面rhgb quiet后面加“空格”,然后键入“single”,或者直接输入数字的“1”修改完成后回车键,然后按b键进行重新启动进入系统,这时是单用户模式6、移动到下一行,进行修改密码最终修改完密码,reboot一下即可。特别说明远程连接不支持此操作。运行级别说明:0: 关机1:单用户 [类似
2020-06-08 07:22:44
828
原创 CentOS6.8安装
CentOS6.X安装**1、创建虚拟机****2、新建虚拟机向导****3、创建虚拟空白硬盘****4、安装Linux系统对应的CentOS版****5、虚拟机命名和定位磁盘位置****6、处理器配置,看自己是否是双核、多核****7、设置内存为2GB****8、网络设置NAT****9、选择IO控制器类型****10、选择磁盘类型****11、新建虚拟磁盘****12、设置磁盘容量****13、你在哪里存储这个磁盘文件****14、新建虚拟机向导配置完成****15、VM设置****16、加载ISO**
2020-06-07 22:58:55
1180
原创 结构型模式之适配器模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240适配器模式1 结构型模式2 适配器模式概述3 适配器模式结构与实现3.1 适配器模式结构1 结构型模式 在面向对象软件系统中,每个类/对象都承担了一定的职责,它们可以相互协作,实现一些
2020-05-13 23:36:34
3456
原创 创建型模式之单例模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240单例模式1 单例模式概述 单例模式是结构最简单的设计模式,在它的核心结构中...
2020-05-08 23:28:57
892
原创 创建型模式之原型模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240原型模式1 原型模式概述2 原型模式结构与实现2.1 原型模式结构2.2 浅克隆与深克隆2.3 原型模式实现3 原型模式应用实例4 原型管理器&...
2020-05-06 21:57:16
781
1
原创 创建型模式之建造者模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240建造者模式1 建造者模式概述2 建造者模式结构与实现2.1 建造者模式结构2.2 建造者模式实现 ...
2020-04-30 23:16:32
1022
原创 创建型模式之抽象工厂模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240工厂方法模式:https://blog.youkuaiyun.com/qq_34896730/article/details/105604814抽象工厂模式...
2020-04-25 18:36:14
1580
原创 创建型模式之工厂方法模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240简单工厂模式:https://blog.youkuaiyun.com/qq_34896730/article/details/105478464工厂方法模式...
2020-04-19 16:39:44
571
1
原创 创建型模式之简单工厂模式(Java版)
设计模式概述及分类:https://blog.youkuaiyun.com/qq_34896730/article/details/105324092面向对象设计原则:https://editor.youkuaiyun.com/md/?articleId=105352240简单工厂模式1 创建型模式2 简单工厂模式概述3 简单工厂模式结构与实现3.1 简单工厂模式结构3.2 简单工厂模式实现4 简单工厂模式应用实例...
2020-04-14 22:09:56
1058
1
原创 面向对象设计原则
面向对象设计原则1 面向对象设计原则概述2 单一职责原则3 开闭原则4 里氏代换原则5 依赖倒转原则7 合成复用原则1 面向对象设计原则概述 软件的可维护性(Maintainability)和可复用性(Reusability)是两个非常重要的用于衡量软件质量的属性,软件的可维护性是指软件能够被理解、改正、适应及扩展的难易程度...
2020-04-07 23:31:15
632
原创 设计模式概述,如何根据目的和范围对设计模式进行分类
设计模式概述1.什么是设计模式2.设计模式的基本要素3.设计模式的分类4.GoF设计模式简介 本篇主要介绍设计模式概念、分类、基本要素、优点等设计模式特性,为Java版设计模式专栏下的各篇设计模式博客奠定基础。1.什么是设计模式 设计模式(Design Pattern)是一套被反复使用...
2020-04-05 23:33:58
2062
原创 MySQL列类型详解
MySQL列类型详解数值型整型浮点型/定点型字符型日期时间类型(插入时需加引号) 在MySQL中,所谓建表就是声明列的过程。数据是以文件的形式放在硬盘上,也有放在内存里的,不同的列所占的空间不同。选择列的原则是够用且不浪费。数值型整型 整型包括5种列类型:tinyint、smallint、mediumint、int、big...
2020-03-29 20:21:42
235
原创 流API
JDK8在线Api中文手册JDK8在线Api英文手册流API 在JDK8新增的许多功能中,有两个可能最为重要,分别是lambda表达式和流API。本篇介绍流API。流API的设计考虑到了lambda表达式。而且,流API有力的展示了lambda表达式带给Java的强大能力。 虽然与lambda表达式的设计兼容性十分惹人注意...
2020-03-22 17:03:46
556
1
原创 反射
JDK8在线Api中文手册JDK8在线Api英文手册反射 反射是软件分析自身的能力,这个功能是由java.lang.reflect包和Class中的元素提供的。反射是最重要的功能,特别是当使用调用了Java Bean的组件时。通过反射可以确定类提供的方法、构造函数以及域变量。 java.lang.reflect包提供了一些...
2020-03-22 14:18:50
142
原创 正则表达式处理
JDK8在线Api中文手册JDK8在线Api英文手册正则表达式处理1 Pattern 类2 Matcher 类3 正则表达式的语法4 演示模式匹配5 模式匹配的两个选项 java.util.regex包支持正则表达式处理。作为在此处使用的术语,正则表达式是描述字符序列的一串字符。这种通过描述被称为模式,可以用于在其他字符序列中查找匹配。正则表达式可以指定通配...
2020-03-21 23:23:19
618
原创 并发实用工具
JDK8在线Api中文手册JDK8在线Api英文手册并发实用工具1 概述2 并发 API包2.1 java.util.concurrent 包2.2 java.util.concurrent 包1 概述 从一开始,Java就对多线程和同步提供了内置支持。例如,可以通过实现Runnable接口或扩展Thread类来创建新的线程;可以通过使用synchorni...
2020-03-16 23:37:15
341
1
原创 联网
JDK8在线Api中文手册JDK8在线Api英文手册联网1 联网的基础知识2 联网类和接口3 InetAddress 类3.1 工厂方法3.2 实例方法4 Inet4Address 类和 Inet6Address类5 TCP/IP 客户端套接字6 URL 类 Java几乎是Internet编程的同义词。这有许多原因,不仅仅是因为Java能够产生安全、跨平台、...
2020-02-25 10:14:26
603
QrCodeCreateUtil.java
2019-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人