自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黑小飞的博客

技术的突飞猛进往往是自然发生的。某个夜晚苦熬一个知识点时,不会觉得突飞猛进,只有在多年后的某日, 熟练地给别人讲解这个知识点后, 内心才会小小地波动一下, 猛然忆起当年深夜中的青灯一盏。

  • 博客(33)
  • 收藏
  • 关注

原创 主流消息队列RabbitMq,RocketMq,Kafka区别

主流消息队列RabbitMq、RocketMq、kafka对比

2022-08-27 16:52:57 1516 2

原创 quartz-深度解析

任务调度原理分析 1.需要用到定时任务时,应该如何选型?2.为什么需要分布式任务调度系统?3.quartz核心思想?4.不改配置,不重启,如何实现定时任务的动态调度?5.集群部署如何保证不重跑、不漏跑?......

2022-06-18 13:56:43 2350 1

原创 SpringBoot+WebSocket技术实现

WebSocket1.背景为了实现推送技术,实时更新前端页面。2.实现方式1.Ajax 轮询。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP请求,然后由服务器返回最新的数据给客户端的浏览器2.浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。3.优势Ajax:这种传统的模式带来很明显的缺点,即浏览器需要不断的向服务器发出请求,然而HTTP请求可能包含较长的头部,其中真正有

2021-03-11 16:57:11 625 1

原创 JDK的下载以及安装(详解)

JDK的下载以及安装(详解)1.什么是JDK?为什么要安装JDK?jdk-全称JavaSE Development Kit,java开发工具包,是Sun公司提供的一套用于开发Java应用程序的开发包,它提供了编译,运行Java程序所需的各种工具和资源,包括Java编译器,Java运行时环境(JRE),已及常用的Java类库等。JRE-全称Java Runtime Environme...

2018-09-03 08:18:29 333

原创 Linux操作系统(一)了解Linux操作系统

Linux操作系统(一)了解Linux操作系统什么是操作系统?操作系统是用来管理其他应用软件的。操作系统的分类:按照应用领域来分:桌面操作系统 (windows) 服务器操作系统(Linux)嵌入式操作系统(硬件上)按照源码开放程度来分:闭源操作系统 (windows) 开源操作系统(Linux)Linux:诞生日期:1991年...

2018-08-28 13:35:17 471

原创 Linux操作系统 (二)下载以及安装

Linux操作系统需要了解:诞生时间:1991年开发者: 林纳斯.托瓦茨Linux特点:免费、开源版本:Redhat商业版 ->centos debian社区版 —>ubantu(方向是桌面操作系统) 安装方式:1.直接安装Linux系统(专门用作服务器的)。2.双系统安装,需要来回切换。3.安装在虚拟机上,首先需要安

2018-08-28 11:29:30 11902

原创 windows server 2012 R2部署java项目之踩坑之路

windows server 2012 R2部署java项目之踩坑之路整个软件开发流程,个人认为最刺激的有两部分 项目规划和部署上线。中间都是无聊的板砖,项目开发完成,测试三轮后,部署上线的时候,领导给出的服务器让我一阵头大,windows server 2012 R2,最重要的是这台服务器上部署着公司的几十个.net项目,还有几个java项目,环境复杂,老项目不敢动,跟人家冲突了都得绕着走,由此开启的了我的踩坑之路,程序员的核心是解决问题,一定要有一颗强大的内心。背景完成了一个收费系统,经过三轮测

2021-07-17 11:30:07 2060 3

原创 jenkins搭建

jenkins搭建后端spirngboot项目:1.根据文档步骤搭建完成https://www.cnblogs.com/stulzq/p/9291237.html2.系统管理-插件管理 安装maven插件,并重启Jenkins项目3.系统管理-全局配置工具配置jdkJAVA_HOME:/usr/jdk/jdk1.8.0_261 //到安装目录级别配置mavenMAVEN_HOME:/usr/maven/maven3 //到安装目录级别4.新建任务-构建一个maven项目(1).G

2020-11-25 17:48:15 196

原创 springBoot2.0整合quartz框架

定时任务在项目开发过程中需要用到定时任务,由于业务需求,定时任务需要满足以下条件:在指定时间执行按照某一个频度执行定时任务量很大定时任务的实现方式:Java 自带的 java.util.Timer类,这个类允许你调度一个 java.util.TimerTask 任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。使用较少。Spring3.0 以后自主开发的定时任务工具 spring task ,使用简单,支持线程池,可以高效处理许多不同的定时任务,除 spring

2020-07-23 20:32:50 2160 2

原创 Redis介绍 AND SpringBoot集成Redis

redis1.redis介绍Redis定义Redis是C语言开发的一个开源的高性能键值对(key-value)数据库,可以用作数据库,缓存,消息中间件,他是一个种非关系型数据库。特点性能优秀,数据在内存中,读写速度非常快,支持10W的并发请求。单进程单线程是线程安全的丰富的数据类型,String,list,hash,set,zset支持数据的持久化,可以将内存中的数据保存到磁盘中,重启时加载主从复制,哨兵,高可用可以用作分布式锁,可以作为消息中间件使用,支持发布订阅。2.redis安

2020-05-26 17:49:40 139

原创 rabbitmq-常用的五种工作模式

RabbitMQ参考文章:https://blog.csdn.net/hellozpc/article/details/81436980安装时需注意:1.需要安装erlang环境,配置环境变量。2.需要注意RabbitMQ对应的erLang的版本,版本不对会出错。3.我的代码,RabbitMQ版本为 最新版本3.8.3,消费者代码有所不同项目下载地址:https://github.com/prettycharacter/myRabbitMQ.git五种配置模式的实现准备工作:1.引入Ra

2020-05-18 17:26:48 711

原创 Java高级(七)XML技术

Java高级(七)XML技术AJAX(Asychronous javaScript and XML) 异步刷新技术XML EXtensible Markup Language 可扩展标记语言1.XML的特点XML与操作系统、编程语言的开发平台无关,实现不同系统之间的数据交换2.作用数据交换 配置应用程序和网站 Ajax基石 <?xml version="1.0...

2020-02-10 10:04:22 152

原创 Java高级(六)Java网络编程

Java高级(六)Java网络编程1.理解网络相关概念1.有那些大的局域网?(fq)万维网 因特网内网 局域网网络可以传输资料 共享资料 交流通信IP(Internet protocol)地址(计算机的身份证号,临时唯一的)交换机网站:IP静态的, 唯一的IPV4IPV6Dos命令 :ipconfig,查看windows系统的IP地址Linux: ifconfig,...

2020-02-08 13:53:46 251

原创 Java高级(五)多线程编程

Java高级(五)多线程编程1.理解线程的概念①多线程编程的应用IDM 多线程下载迅雷打开 ->迅雷的进程启动(应用程序的执行实例)②多线程编程的概念线程:进程中执行运算的最小单位。单线程:你开启了一个下载 如果这个下载没有结束 不能开启新的下载任务浪费资源多线程:你开启了一个下载 同时还可以下载其他的充分利用资源(不安全)多线程并不是同时执行,而是交替使用CPU资源举...

2020-02-07 14:46:30 156

原创 Java高级(四)Java的IO

Java高级(四)Java的IO1.了解输入输出的概念之前的概念中:Scanner 输入System.out.print(); 输出所谓的输入和输出都是相对于程序来提出的概念I/Oinput output2.使用file操作文件或者目录什么是文件:相关记录或者放在一起的数据集合文件的后缀名有:.java.class.txt.pptjava.io.File①b...

2020-02-06 15:54:58 103

原创 Java高级(三)实用类

Java高级(三)实用类回顾1.泛型集合与数组相比有哪些优势?①容量自增长,可以方便的扩展或改写集合②提供丰富的API帮助我们处理不同情况的数据2.Collection、list、set、map接口的联系和区别有哪些。Collection是单列集合的顶级接口,是无序的,元素不唯一的List和Set是Collection的子接口,List是有序的,元素不唯一的set是无...

2020-02-06 14:33:17 131

原创 Java高级(二)集合框架和泛型

Java高级(二)集合框架和泛型回顾1.集合框架**Iterator **Collection:无序,不唯一List 有序,不唯一 Set 无序,唯一ArrayList LinkedList HashSet:存储唯一的数据ArrayList的底层是数组结构 由于有索引值,查询遍历效率高,每次插入删除都需要创建新的数组,所以插入删除效率低LinkedList的底层是链表结构 插入...

2019-08-12 23:00:58 193

原创 Java高级(一)集合

Java高级(一)集合1.了解Java集合框架体系结构变量->数组->对象->对象数组(数组长度不可变)->集合框架框架:(模板)  半成品如果我们将数组元素添加一个(改变定长),需要以下的步骤:1.先创建新的数组2.将原来的所有元素复制到新的数组里3.继续追加新的元素4.删除原来的数组对象集合接口:Collection 无序的 ...

2019-08-10 23:02:12 198

原创 Java基础(十一)异常

Java基础(十一)异常1.面试题你遇到的5个最常见异常有哪些?1.了解异常概念异常:在程序的运行过程中,发生了不正常事件!它会中断正在运行的程序!(√)2.理解Java异常处理机制try{ // 可能会出现异常的代码}catch(异常类型){ // 处理捕获到的异常}1.正常运行 和没加try-catch一样2.如果出现异常 且catch块中 声明了此异常(标注能捕...

2019-08-08 22:44:13 108

原创 Java基础(十)抽象类和接口

Java基础(十)抽象类和接口1.了解抽象类和普通类的区别抽象类不能被实例化,因为没有意义。抽象类里可以存在非抽象的方法,也可以存在抽象的方法。如果有抽象方法,那么这个类一定是抽象类。子类必须重写父类抽象的方法,除非子类也是抽象类。(父债子偿)2.会定义抽象方法abstract 抽象的abstract 修饰的就是抽象类public class Dog exte...

2019-08-08 22:32:53 96

原创 Java基础(九)方法重写和多态

Java基础(九)方法重写和多态回顾1.封装public class Student{ public String name; public int age;}Student stu = new Student();stu.name = "";stu.age=1000;public class Student{ // 只能在本类中访问 private String na...

2019-08-07 23:38:05 149

原创 Java基础(八)封装和继承

Java基础(八)封装和继承本章内容1.面向对象的三大特性2.会使用java中的包组织类3.掌握访问修饰符,理解访问权限4.static关键字,代码执行的顺序5.继承1.面向对象三大特性-封装封装、继承、多态,抽象(有时候也被归为特性)。1.理解封装的作用<案例:不合理赋值 年龄设定为了负数…>因为属性是公开访问的 所以可能会出现不合理赋值。为了解决此问题,我...

2019-08-06 23:27:20 117

原创 Java基础(七)方法和方法的重载

Java基础(七)方法和方法的重载回顾方法分为:无参无返//示例: public void xxx(){ }无参有返//示例: public int xxx(){ // return 返回到方法调用者 return xxx; }有参无返//示例: public void xxx(形参列表){}有参有返 //示例:public int xxx1(i...

2019-08-05 22:25:56 109

原创 Java基础(六)面向对象

Java基础(六)面向对象1.掌握类和创建对象的关系面向过程:步骤执行者什么都做面向对象:可重用性,可扩展性,可维护性好程序:高内聚(相同的功能放在一起) 低耦合(修改了某一处另外一处不需要修改)oop(Object oriented programming) 面向对象编程三大特性:封装,继承,多态思想:万物皆对象从一组对象中,将拥有相似特征的对象,划分为一类类:抽象的概念,是对...

2019-08-04 21:35:47 81

原创 Java基础(五)数组结构

Java基础(五)数组结构本章内容1.数组的作用2.数组的定义3.遍历数组1.理解数组的作用存储一个数据使用的是变量,但是如果存储多了定义变量不方便,使用也不方便。这时候就可以采用数组来实现。基本数据类型byte short int long float double boolean char引用数据类型数组、类(String)、接口…2.掌握数组的定义<数据的组...

2019-08-04 12:00:50 100

原创 Java基础(四)循环结构

Java基础(四)循环结构回顾1.if选择结构2.switch选择结构3.三元运算符本章内容1.while循环结构2.do-while循环结构3.for循环结构4.理解各种循环结构的使用场合1.while循环结构1.初始化循环变量2.循环条件3.循环操作4.循环出口(更新循环变量)while(循环条件){ //循环操作 //更新循环条件}2.do...

2019-08-03 16:14:14 87

原创 Java基础(三)选择结构

Java基础(三)选择结构回顾:1.什么是变量2.变量三要素3. ++和--  &&和||本章内容1.if选择结构 4种2.switch小知识:三元运算符: 条件?“x”:“Y” 条件为真X,条件为假Y1.掌握if条件的结构①基础if选择结构if(条件){ //条件成立执行的代码}****e②if-else 选择结构(互斥)if(条件){...

2019-08-03 11:34:43 113

原创 Java基础(二)变量和数据类型

Java基础(二)变量和数据类型回顾:1.什么是编程2.Java编程语言以及其历史3.用记事本开发Java程序的步骤4.包名规则本章内容:1.why? what?2.变量三要素3.掌握变量与常量4.final和finalize和finally的区别5.掌握数据类型的转换1.why?what?RAM:运行时内存,当你计算机断电,关机,或者程序崩溃数据会丢失ROM:只读存储...

2019-08-03 10:54:04 122

原创 Linux软件安装(六)

Linux软件安装在上一篇文章中我们说了Linux系统中安装/卸载软件的命令,使用Xshell远程连接以及操作Linux,使用Xftp传输数据,本篇文章需要用到上篇文章所学到的命令,来配置Java web开发所需要的服务器环境,安装一些常用的软件。主要安装:jdk,tomcat,mysql这里我提供了Linux系统版本的这三种软件安装包,大家可以拿来用,也可以自己去官网下载。(注意Windo...

2019-08-01 14:36:56 227

原创 Linux系统软件安装及项目发布(五)

Linux系统软件安装及项目发布1.使用远程工具来管理服务器SSH协议(Secure Shell):Linux 下的远程连接和操作都是基于SSH协议的,所以远程管理工具一般都称为SSH工具。常用的SSH工具:Xmanager 远程连接工具,功能全面SecurecrtPutty 小的工具,个人开发这里我们介绍的为 Xmanager 下载地址:链接:ht...

2018-09-04 20:21:58 341

原创 Linux文件系统(四)

Linux文件系统注意:1.Linux操作系统不同于我们常用的Windows操作系统,不要从理解个人计算机操作系统的角度去 理解Linux。2.Linux的学习重点在于实践,一定要自己手动安装、配置和管理Linux 3.Linux的命令严格区分大小写。1.Linux的目录和分区在Linux操作系统中所有的设备(包括软件、硬件、文档)都属于...

2018-09-04 20:07:55 487

原创 Java基础(一)认识 Java

Java基础(一)认识 Java大家注意我主要写基础性的东西,如果想要在Java编程路上走得更远,可以来瞧瞧。为什么要学习Java?1.Java是现在最流行的网络编程语言之一。2.Tiobe排行榜第一的位置什么是java?java语言主要可以用来:网站开发(Java-EE)Android开发(移动端的APP开发)客户端:QQ,迅雷网站开发:京东,天...

2018-09-01 20:02:29 375

原创 Linux操作系统(三)Vmware创建虚拟机,并安装Linux操作系统

1.打开我们 下载好的Vmware,单击创建虚拟机,或者 新建——&amp;amp;amp;amp;amp;gt;新建虚拟机2.然后我们选择典型安装,点击下一步3.由于我们选择的是DVD镜像,所以我们选择稍后安装操作系统,再单击下一步4.我们学习的就是Linux所以我们的客户机选择Linux(L),版本选择我们上篇文章中下载的centos 镜像,之后点击下一步。5.虚拟机名称:填写一个自己...

2018-08-28 18:12:18 1059

空空如也

空空如也

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

TA关注的人

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