自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RabbitMQ(一) - RabbitMQ的快速入门

https://blog.csdn.net/weixin_38305440/article/details/102810522?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161951893516780255297437%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=16195189351678025529743

2022-03-24 18:02:12 156

原创 MySQL 事务的隔离级别

https://blog.csdn.net/coco3600/article/details/100508427?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164779169616780366545233%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=164779169616780366545233&biz_id=0&amp

2022-03-21 11:04:44 180

原创 可视化算法网站

可视化算法网站

2022-03-03 21:00:00 215

原创 8-设计模式-适配器模式

设计模式-适配器模式

2022-03-01 07:00:00 172

原创 9-设计模式-桥接模式

一、什么是桥接模式1)桥接模式(Bridge模式)是指:将实现与抽象放在两个不同的类层次中,使两个层次可以独立改变。2)是一种结构型设计模式3)Bridge模式基于类的最小设计原则,通过使用封装、聚合及继承等行为让不同 的类承担不同的职责。它的主要特点是把抽象(Abstraction)与行为实现 (Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能 扩展UML图原理类图说明:1)Client类:桥接模式的调用者2)抽象类(Abstraction) :维护了

2022-03-01 07:00:00 138

原创 7-设计模式-建造者模式

设计模式-建造者模式

2022-02-28 06:00:00 108

原创 6-设计模式-抽象工厂模式

抽象工厂模式

2022-02-27 21:00:00 61

原创 5-设计模式-工厂方法模式

工厂方法模式

2022-02-27 12:00:00 131

原创 4-设计模式-简单工厂模式

一、什么是简单工厂1)简单工厂模式是属于创建型模式,是工厂模式的一种。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式2)简单工厂模式:定义了一个创建对象的类,由这个类来封装实例化对象的行为(代码)3)在软件开发中,当我们会用到大量的创建某种、某类或者某批对象时,就会使用工厂模式。二、具体例子一个披萨的项目:要便于披萨种类的扩展,要便于维护1)披萨的种类很多(比如:GreekPizz、CheesePizz等 )2)披萨的制作有 prepar

2022-02-26 22:00:00 183

原创 3-设计模式-单例模式

一、什么是单例模式所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类 只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。比如Hibernate的SessionFactory,它充当数据存储源的代理,并负责创建Session 对象。SessionFactory并不是轻量级的,一般情况下,一个项目通常只需要一个 SessionFactory就够,这是就会使用到单例模式。二、单例设计模式八种方式饿汉式(静态常量)饿汉式(静态代码块)懒汉式(线程不安全)

2022-02-25 19:02:22 464

原创 1-设计模式-UML类图关系图标认识及Java代码示例

详细大图:https://www.processon.com/embed/62170865e0b34d075bae8b2f参考:https://www.cnblogs.com/haizai/archive/2020/02/28/12376166.html

2022-02-24 16:35:54 380

原创 MySQL 获取祖父节点,子节点

函数获取祖父节点CREATE DEFINER=`root`@`%` FUNCTION `getDeptParentList`(`rootId` varchar(64)) RETURNS varchar(1000) CHARSET utf8BEGINDECLARE nParentList VARCHAR(10000);DECLARE nParentTemp VARCHAR(10000);SET nParentTemp = rootId;WHILE nParentTemp IS NOT NUL

2022-02-01 21:41:11 1076

原创 vue前端项目启动出错处理(Syntax Error: ..\eslint\lib\cli-engine\cli-engine.js:4)

背景vue前端项目启动 npm run dev 出错Syntax Error: D:\RuoYi-Vue\ruoyi-ui\node_modules\eslint\lib\cli-engine\cli-engine.js:421 } catch { ^ SyntaxError: Unexpected token { @ multi (webpack)-dev-server/client?http://localhost:81&sockPath=/so

2022-01-26 23:47:47 3385 1

原创 Redis、Ehcache、Memcache之间如何选择

Ehcache基本介绍EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认CacheProvider。Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAP api等特点。Spring 提供了对缓存功能的抽象:即允许绑定不同的缓存解决方案(如Ehcache),但本身不直接提供缓存功能的实现。

2021-05-07 10:24:16 156

原创 MQ(一) - 什么是MQ

1. MQ 的基本概念MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。2. MQ 的优劣MQ 的优势1. 应用解耦降低工程间的强依赖程度,针对异构系统进行适配。在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。通过消息系统在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口,当应用发生变化时,可以独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。没有MQ的情况比如库存系统出

2021-04-23 17:20:39 493 1

原创 JVM(六) - JVM调优

前言JVM调优主要是调整下面两个指标停顿时间:垃圾收集器做垃圾回收中断应用执行的时间。-XX:MaxGCPauseMillis吞吐量:垃圾收集的时间和总时间占比:1/(1+n) ,吞吐量为:1-1/(1+n)。-XX:GCTimeRation=nGC调优步骤:打印GC日志Tomcat则直接加在JAVA_OPTS变量里。 -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps ‐Xloggc:./gc.log分

2021-04-16 21:50:07 559

原创 JVM(五) - JVM垃圾收集器

前言在上一篇文章中,我们介绍了JVM垃圾回收算法,这些算法属于方法论,而在 JVM 中,垃圾回收的具体实现是由 垃圾回收器(Garbage Collector)负责。在了解 垃圾回收器 之前,首先得了解一下垃圾回收器的几个名词。并发与并行串行(Parallel)单线程 进行垃圾回收工作,但此时 用户线程 仍然处于 等待状态。并发(Concurrent)这里的并发指 用户线程 与 垃圾回收线程 交替执行。并行(Parallel)这里的并行指 用户线程 和多条 垃圾回收线程 分别在不同 CP

2021-04-14 01:27:15 166

原创 JVM(四) - JVM垃圾收集算法

前言Java内存运行时区域,其中程序计数器、虚拟机栈、本地方法栈 三个区域随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地执行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来时就已知的,因此这几个区域的内存分配和回收都具备确定性。在这几个区域内不需要过多考虑回收的问题,因为方法结束或线程结束时,内存自然就跟随着回收了。Java堆 和 方法区 则不一样,一个接口中的多个实现类需要的内存可能不一样,一个方法中的多个分支需要的内存也可能不一样。我们只有在程序处于运行期间时才

2021-04-13 16:22:02 208

转载 Java进阶之计算机网络

https://blog.csdn.net/qq_39843371/article/details/83858383

2021-04-10 14:39:49 90

原创 JVM(六) - JVM性能调优监控工具

前言在线上我们经常会遇见如下几个问题:内存泄露;某个进程突然 CPU 飙升;线程死锁;响应变慢。如果遇到了以上这种问题,在 线下环境 可以有各种 可视化的本地工具 支持查看。但是一旦到 线上环境,就没有这么多的 本地调试工具 支持,我们该如何基于 监控工具 来进行定位问题?我们一般会基于 数据收集 来定位问题,而数据的收集离不开 监控工具 的处理,比如:运行日志、异常堆栈、GC 日志、线程快照、堆内存快照 等。为了解决以上问题,我们常用的 JVM 性能调优监控工具 大致有:jps、jsta

2021-04-04 18:45:40 276 1

原创 JVM(三) - JVM类加载

1、类的生命周期类加载:类加载器将class文件加载到虚拟机内存加载:在硬盘上查找并通过IO读入字节码文件验证:校验字节码文件的正确性准备:给类的静态变量分配内存,并赋予默认值解析:将符号引用替换为直接引用,该阶段会把一些静态方法(符号引用,比如main()方法)替换为指向数据所存内存的指针或句柄等(直接引用),这是所谓的静态链接过程(类加载期间完成),动态链接是在程序运行期间完成的将符号引用替换为直接引用初始化:对类的静态变量初始化为指定的值,执行静态代码块(int i= 2,准备阶段是

2021-04-03 14:44:27 84

转载 JVM(二) - JVM内存区域

JVM内存区的组成JVM内存区域包括 PC计数器、Java虚拟机栈、本地方法栈、堆、方法区、运行时常量池和 直接内存。下面用一张图来介绍每个区域注意:程序计数器、虚拟机栈、本地方法栈属于每个线程私有的;堆和方法区属于线程共享访问的。1.1. PC计数器程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看做是当前线程所执行的字节码行号指示器。当前线程所执行的字节码行号指示器。每个线程都有一个自己的PC计数器。线程私有的,生命周期与线程相同,随

2021-03-31 22:52:25 148 2

转载 Java进阶之计算机程序运行的基本原理

前言Java进阶中,计算机的基础知识能够更好的让我们了解Java底层运行的过程,比如Jvm的知识,TCP三次握手等。因此,此文简单的介绍有关计算机的基础知识(偏向于Java可能涉及到的)冯诺依曼式计算机存储程序式计算机也称为冯诺依曼式计算机1.组成分为五个部分,它们之间以总线相连通过执行一个简单相加指令举例:举例:存储器中一条命令,假设这条命令执行这样一条动作,ADD 123 321,ADD表示要做的事情(相加),后面是参数相加动作的两个数,(1)通过命令记录员找到当前执行到的命令,

2021-03-30 22:19:24 331

转载 Java进阶之计算机组成原理概述

1.计算机的发展简史1.1 计算机发展的四个阶段自从1945年至今,计算机经历了电子管计算机,晶体管计算机,集成电路计算机以及超大规模集成电路计算机。电子管计算机(1945年-1957年)第二次世界大战是电子管计算机产生的催化剂,而最著名的电子管计算机是来自美国的埃尼阿克(ENIAC),这一时期的计算机有如下特点集成度小,占用空间大功耗高,运行速度慢操作复杂,更换程序需要接线晶体管计算机(1957年-1964年)1948年,贝尔实验室的三个科学家发明了晶体管,相比电子管而言,晶

2021-03-30 21:40:44 310

原创 JVM(一) - 认识虚拟机

一、什么是虚拟机(JVM)JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的(可以简单理解为:在内存划一块区域,通过模拟计算机的各种功能)。JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上一次编译,多次运行,具有跨平台性。JVM在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。Java虚拟机包括一套字节码指令集、一组寄存

2021-02-09 23:11:53 144 2

原创 MQ(番外1) - Queue与Topic区别

队列(Queue)和主题(Topic)是JMS支持的两种消息传递模型: Queue Topic 名称 Point-to-Point 点对点 Publish Subscribe 发布/订阅 概要 在该消息传递模型下,一个消息生产者向消息服务器端一个特定的队列发送消息,一个消费者从该队列中读取消息。在这种模型下,消息生产者知道消息消费者的队列并直接将消息发送到消息消费者的队列 在该消息传递模型下,一个消息发布者向一个特定的消息主题发布消息,0或多个对此消息主题感.

2021-02-07 16:31:23 1369

原创 Oracle-字符集之中文乱码分析

dd

2021-01-01 00:38:37 1213

原创 Vue第一篇:菜鸟入门之vue简介

一、简介vue 是MVVM框架二、vue的最基本使用html 引入vue.js<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script><!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>v-if / v-show /

2020-07-09 14:02:30 366

原创 Vue菜鸟入门--搭建项目

一、介绍vue-cli 是一个基于 Vue.js 进行快速开发的完整系统。有三个组件:cli:@vue/cli 全局安装的 npm 包,提供了终端里的vue命令(如:vue create 、vue serve 、vue ui 等命令)cli 服务:@vue/cli-service是一个开发环境依赖。构建于 webpack 和 webpack-dev-server 之上(提供 如:serve、build 和 inspect 命令)cli 插件:给Vue 项目提供可选功能的 npm 包 (如: Babe

2020-06-18 17:35:15 720

原创 SpringCloud第三篇:Feign(F版本)

Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。简而言之:Feign 采用的是基于接口的注解Feign 整合了ribbon,具有负载均衡的能力整合了Hystrix,具有熔断的能力方志朋:https://www.fangzhipeng.com/s

2020-06-01 17:24:05 470

原创 SpringCloud第二篇:Ribbon(F版本)

在上一篇文章,讲了服务的注册和发现。在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的。Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。在这一篇文章首先讲解下基于ribbon+rest。ribbon是一个负载均衡客户端,可以很好的控制htt和tcp的一些行为。1.准备工作继上篇文章的项目,新建两个服务,user9000,user9002,两个服务都做负载均衡ribbon。1.1 创建项目和之

2020-05-31 11:48:51 615

原创 Oracle11g数据库导入Oracle10g数据库

https://blog.csdn.net/defonds/article/details/4263137?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-4不用用户设置参数https://www.cnblogs.com/hllnj2008/p/5105908.html

2020-05-19 13:55:40 168

原创 SpringCloud第一篇:Eureka(F版本)

版本:Spring Boot版本2.0.3.RELEASESpring Cloud版本为Finchley.RELEASE。1.创建一个父maven工程,下面是pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmln...

2020-04-11 23:28:51 246

原创 学习SpringCloud遇到的异常记录

1.java.lang.IllegalStateException: No instances available for 192.168.1.101出现地方:原因:使用RestTemplate时报错java.lang.IllegalStateException: No instances available for 127.0.0.11:不要使用ip+port的方式访问,取而...

2020-04-07 22:51:42 320

原创 Centos7 安装 nexus2

1.下载nexushttps://www.sonatype.com/download-oss-sonatype2.解压到 /usr/local/nexus,有两个文件tar -zxvf nexus-3.13.0-01-unix.tar.gz -C /usr/local/nexus3、在/lib/systemd/system目录下创建nexus.service文件...

2020-04-05 17:10:38 574

原创 Centos7 安装 Git

Centos7下安装git有两种方式:1.yum命令安装sudo yum install -y git执行命令就会自动安装git以及其依赖包安装完毕,输入 git --version ,出现git版本号,证明安装成功!2.源码安装安装前要手动安装下依赖包(可使用rpm -qa | grep wget命令查看是否有安装包)sudo yum install -...

2020-03-04 11:54:56 937

转载 Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图

转载于:https://blog.csdn.net/qq_27093465/article/details/69226949?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

2020-02-26 15:38:37 170

原创 IDEA 本地创建项目并推送到GitHub

第一种方式1.在GitHub上创建一个远程仓库myGit2.将项目交给git管理注意,文件名会变红了,说明这些文件在git工作区,但还没规它管呀3.将项目文件添加到git管理,右键项目该操作之后,项目文件名会变绿色  4.提交到暂存区弹出将要提交文件框5.全选,填写提交信息,选择commit and push,弹出下面这个框...

2020-02-06 13:13:09 677

转载 CentOS 7 中firewall-cmd命令

如果你的系统上没有安装使用命令安装安装firewalld 防火墙yum install firewalld开启服务systemctl start firewalld.service关闭防火墙systemctl stop firewalld.service开机自动启动systemctl enable firewalld.service关闭开机制动启动systemctl d...

2020-01-20 17:01:35 826

转载 Linux各目录及每个目录的详细介绍

【常见目录说明】 目录 /bin 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。 /etc 存放系统管理和配置文件 /home 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/hom...

2020-01-20 15:58:34 644

空空如也

空空如也

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

TA关注的人

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