自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git命令及使用方法、含义

git在克隆时,git会执行的操作为为远程仓库的分支在本地仓库创建与之关联的远程分支,接着会创建一个跟踪远程仓库活动分支的本地分支,一般为主分支(main),切换分支时,跟踪的分支随即变为切换后的额分支。本地仓库中的本地分支,例如main似乎本地仓库中的远程分支origin/main自然的有一种关联,例如执行git pull,会自然的将远程分支中的内容合入到本地分支中,执行git push操作时,除了将本地分支的提交推送到远程仓库外,还会更新对应的远程分支。以上现象是由。

2023-11-23 20:35:12 59

原创 地址栏输入域名按回车后发生了什么?

从五层协议的体系结构来看,主机端需要按照自顶向下的顺序进行封包:应用层按照Http请求协议构建http请求报文,交付给运输层处理;运输层给http请假报文加上TCP首部,成为TCP报文段,交付给网络层处理;网络层为TCP报文段添加IP首部,成为IP数据报,交付给数据链路层;数据链路层为IP数据报添加一个首部和尾部,成为帧,交付给物理层;物理层将帧看作为比特流,根据所使用的物理层协议,可能会给物理层前面再特定的比特流,随后将比特流变换为相应的信号,信号通过传输媒体到达服务器;服务器端需要按照自

2021-03-21 17:13:15 238

原创 数据结构中常用的排序算法二(归并、快排)-Java实现

归并排序核心思想:归并排序使用的是分治思想,将一个问题分解为多个相同的子问题,逐一解决。归并排序是将要排序的序列划分为两个序列,再对这两个序列进行划分,直到序列不可再划分(只有一个数组),再将序列按照排序顺序依次合并。如下图所示时间复杂度:归并排序的时间复杂度为O(nlogn),归并排序无论是最好情况还是最坏情况下的时间复杂度都为O(nlogn)。空间复杂度:归并排序在合并两个有序序列的时候,借助了额外的内存空间,归并排序的空间复杂度为O(n)。Java实现: /** *@author

2021-03-05 18:42:19 153

原创 数据结构最常用的排序算法一(冒泡、插入、选择)-Java实现

冒泡排序核心思想:冒泡排序只会比较相邻的两个数,相邻的两个数满足大小条件时不移动,不满足大小条件时交换位置,然后指针后移一位,直到指针到达未排序的序列的倒数第二个位置,再进行下一轮排序。冒泡排序每一轮至少会使一个数到达指定的位置。以C,D,A,F,B,E为例,下面图解为从小到大排序,且只展示了F回到自己位置,后面的数据思想相同。第一轮结束后,F回到了自己的位置。时间复杂度:每一次循环都有至少一个数字回到自己的位置上,那么循环数组长度那么多次就会使所有的数字回到自己的位置,因此时间复杂度为O(n^2

2021-03-04 17:34:23 247 3

原创 idea使用技巧之Debug

认识按钮快捷键Step Over 直接一步一步执行代码,无论是系统方法还是自定义方法,都不会进入方法内部;Step Into 一步一步执行代码,遇到系统方法不进入方法内部,遇到自定义方法会进入方法内部;Force Step Into 一步一步执行代码,遇到系统方法和自定义方法都会进入方法内部;Resume Program 直接进入下一个断点,忽略两个断点之间的代码。当当前断点是程序的最后一个断点时,直接执行完毕;Mute Breakpoint 忽略此次调试中的所有断点

2021-03-03 22:14:59 242 1

原创 Java基础

这一博客是在回顾之前学习的知识时,随手记的笔记,铁汁们可以提出建议一起来探讨哇!Java语言中只有值传递对于基本的数据类型和String类型的数据,Java在传值时,直接传递的是值本身,例如int i = 1;int j = i;执行j = i时,直接将i的值1传递给j。对于引用型的数据,在进行值传递时,传递的是对象的引用值。例如Student stu1 = new Student();stu1.id = 001;stu1.age = 18;Student stu2 = stu1;

2021-02-27 16:05:11 103

原创 SpringCloud分布式配置中心Config

SpringCloud Config分布式系统面临的问题——配置问题微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的,动态的配置管理设施是必不可少的。SpringCloud提供了ConfigServer来解决这个问题,我们每一个微服务自己带着一个application.yml,上百个配置文件的管理,必将对运维带来巨大的工作量。分布式配置中心是什么?SpringCloud Conf

2020-09-15 16:27:33 115

原创 SpringCloud 服务网关Gateway

zuul由于内部分歧,已经不再维护了。Gateway新一代网关概念简述是什么Cloud全家桶中有个很重要的组件就是网关,在1.X版本中都是采用zuul网关,在2.X版本中,zuul的升级一直跳票,SpringCloud最后自己研发了一个网关替带zuul——SpringCloud Gateway 。换言之,gateway就是原zuul1.X版 的替代。Gateway是什么?Gateway是在spring生态系统上构建的api网关服务,基于Spring5,SpringBoot2和Projec

2020-09-10 16:50:38 385

原创 SpringCloud 服务降级Hystrix

本篇文章是在B站看的周阳老师的SpringCloud的教学视频做的笔记,有感兴趣的同学可以B站看阳哥的视频进一步学习https://www.bilibili.com/video/BV18E411x7eT?p=1服务降级分布式的系统所面临的问题可能产生服务雪崩,多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓

2020-09-08 21:32:35 170

原创 SpringCloud 服务调用Ribbon、OpenFeign

服务调用Ribbon负载均衡Ribbon是什么?Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用,Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助的基于某种规则(如简单轮询,随机连接等)去连接这些机器。我们很容易使用Ri

2020-09-07 09:32:46 366

原创 SpringCloud 服务注册中心Eureka、zookeeper

本篇文章是在B站看的周阳老师的SpringCloud的教学视频做的笔记,有感兴趣的同学可以B站看阳哥的视频进一步学习https://www.bilibili.com/video/BV18E411x7eT?p=1服务注册中心Eureka服务注册与发现Eureka基础什么是服务治理​ Spring Cloud封装了Netflix公司开发的Eureka模块来实现服务治理​ 在传统的rpc远程调用框架中,管理每个服务于服务之间依赖关系比较复杂,所以需要使用服务治理,管理服务与服务之间的依赖关系,可以实现

2020-09-04 12:14:16 373

原创 SpringCloud 初级搭建项目

本篇文章是在B站看的周阳老师的SpringCloud的教学视频做的笔记,有感兴趣的同学可以B站看阳哥的视频进一步学习https://www.bilibili.com/video/BV18E411x7eT?p=1SpringClould是什么?SpringCloud是分布式微服务架构的一站式解决方案,十多种微服务架构落地技术的集合体,俗称微服务全家桶。SpringCloud初级项目搭建父项目构建pom.xml<?xml version="1.0" encoding="UTF-8"?>

2020-09-01 16:13:34 203

原创 Redis配置、持久化、发布订阅、集群、缓存穿透和雪崩

本篇文章是看B站狂神Redis教程做的笔记,我没有视频中所有讲解的都是实验,且狂神是在虚拟机中完成的教学,我用的环境是Windows,所以笔记有部分缺陷和不同。想要想教程详情戳这里→https://www.bilibili.com/video/BV1S54y1R7SB?p=1Redis.conf详解Redis的启动就是通过配置文件来启动,即Redis启动前就会加载Redis.conf配置文件,下面来具体解读redis.windows.conf单位(unit单位对大小写不敏感)包含(类似于

2020-08-29 16:01:45 205

原创 Windows环境下搭建Redis集群

在上一篇文章中,笔记中记载了主从复制的作用和为什么要用到主从复制,在一些实战中,一台Redis服务器是远远不够的,下面我们来学习一下如何搭建Redis集群。工具准备1、Redis3.0以上版本下载Redis的Windows版本,Redis3.0以上的版本才支持集群搭建,因此需要准备3.0版本以上的。下载地址:https://github.com/MicrosoftArchive/redis/releases下载完成后直接解压,下面是Redis解压后的目录结构2、Ruby下载地址http://r

2020-08-28 17:56:12 251

原创 Jedis以及SpringBoot整合Redis

说明:本文章是看b站狂神的Redis视频做的笔记,想了解详细内容可以移步→https://www.bilibili.com/video/BV1S54y1R7SB?p=1Jedis使用Java操作RedisJedis是Redis官方推荐的java连接开发工具,使用java操作Redis中间件。基本使用1、导入对应的依赖<dependencies> <!--导入jedis的依赖--> <!-- https://mvnrepository.com/ar

2020-08-27 17:56:33 316

原创 Redis五大数据类型及三大特殊类型的基本操作(入门)和Redis事务

Redis入门说明:这篇文章是在学习b站狂神的Redis教程时,跟着做的笔记,里面可能有一些偷懒或者不全面之处,望指正,抱拳了????概述Redis是什么?Redis(Remote Dictionary Server),即远程字典服务!是当下最热门的NoSQL技术之一,也被人们称为结构化数据库Redis能干嘛?1、内存存储、持久化,内存中是断电即失的,所以说持久化很重要(rdb、aof)2、效率高,可以用于高速缓存3、发布订阅系统4、地图信息分析5、计时器、计数器(浏览量!)

2020-08-26 23:13:55 525

原创 springboot中的springbootApplication注解有什么作用?

@SpringBootApplication我们知道,一个springboot项目和一个普通的web项目相比最大的优势就在于其改良了原本笨重的配置,内部自身实现了很多第三方库,使得项目精简了不少。当然启动一个springboot项目只需从主程序类的main函数进入,@SpringBootApplication注解会自动为我们扫描配置,最终成功启动项目。那么@SpringBootApplication注解究竟有什么神奇的作用呢?了解@SpringBootApplication@SpringBootApp

2020-08-11 19:18:37 7157

原创 SpringMVC中@RequestMapping注解的用法(全面)

SpringMVC中@RequestMapping注解的用法(全面)@RequestMapping是SpringMVC中的核心注解,SpringMVC中的映射请求就是使用改注解来完成的,这个注解用来指定控制器可以处理哪些请求,其所做的工作相当于在web.xml中配置了servlet完成映射。下面我们来具体了解一下@RequestMapping的用法@RequestMapping的作用范围通过查看RequestMapping注解类的源码可以看到,在其@Target注解中,有两个属性值,说明@Reques

2020-08-06 20:02:34 4640

原创 Spring 事务管理的xml和注解实现方式

Spring 事务什么是事务?事务在百度百科中的解释为访问并可能更新数据库中各种数据项的一个程序执行单元。在关系数据库中,一个事务可以是一条sql语句、一组sql语句或整个程序,一个事务就是一个不可分割的执行单元,在一个事务中,要么全部执行,要么全部不执行。事务具备原子性(A)、一致性(C)、隔离性(I)和持久性(D)这四大特性,至于这四大特性所表达的含义,不清楚的童鞋可自行百度。我们经常会拿银行的转账业务来描述一个事务,当A要给B转账1000元时,需要完成的工作包括A的账户余额减少1000元和B的

2020-08-05 18:33:10 275

原创 Spring AOP(面向切面编程)及其xml和注解实现方式

Spring AOP什么是AOP了解AOPAOP的全程为Aspect Oriented Programming,中文译为面向切面编程。面向切面编程是一种编程思想,是面向对象编程的一种补充。在下面的图中,原本的OOP编程是纵向编程,当多个模块之间要是实现某段同样的代码,最愚蠢的办法就是在每个模块都编写一段代码,在未切面时,一般采用的方法时将这段代码封装为方法,在各模块合适的地方进行调用,需求修改时只需修改封装的方法。但是当这一需求不再需要时或增加了新的需求,那么我们就必须再到每个模块进行修改,这样就增大

2020-08-05 13:42:40 283

原创 Spring IOC控制反转的xml和注解实现

IOC(Inversion of Control)背景在以往的面向对象的程序中,复杂的业务逻辑都是通过对象之间的彼此通信合作来完成的,如下图所示:在上图中,对象A,B,C,D,E之间,存在着复杂的依赖关系,当其中一个对象出现问题时,就会导致其他的对象无法继续工作。为了解决对象之间耦合度过高,相互之间依赖太强的问题,Michael Mattson提出了IOC的概念。IOC(控制反转)和DI(注入依赖)什么是IOCIOC的全称是Inversion of Control,中文为“控制反转”。下面我们

2020-08-04 21:50:44 197

原创 vue生命周期

vue生命周期本文章参考https://segmentfault.com/a/1190000011381906在Vuejs的官网中提供了一张Vue的生命周期图示(移步到:https://cn.vuejs.org/v2/guide/instance.html#%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F%E5%9B%BE%E7%A4%BA),相信很多小伙伴看到这张图示的时候跟我一样有点懵,虽然官网中提到不需要立马弄明白生命周期中所有的东西,但是你迟早有对这个东西好奇的一天。今天

2020-07-22 19:07:04 171

空空如也

空空如也

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

TA关注的人

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