7 湘水友独

尚未进行身份认证

暂无相关简介

等级
TA的排名 32w+

SpringBoot JPA 问题汇总

1、项目启动报错:a bean of type ‘xxxx’ that could not be found原因分析:找不到JpaRepository所在的类***************************APPLICATION FAILED TO START***************************Description:A component required...

2020-01-18 22:31:28

如何手写一个LRU算法

背景在Redis的内存占用过多的时候,此时会进行内存淘汰,比较常用的就是基于LRU算法进行淘汰。那么什么是LRU算法呢?LRU算法概念LRU 是Least Recently Used的缩写,简称最近最少使用。也就是说在Redis中内存满了,会优先淘汰那些最近最不常访问的数据。那在Java中用什么数据结构去实现呢?一种的话是基于LinkedHashMap,一种是自己设计数据结构,使用链表...

2019-10-27 01:02:59

Dubbo入门指南

简介Dubbo是一款高性能、轻量级的开源RPC框架,提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,本章旨在帮助大家快速的搭建Dubbo框架服务,文中示例通过SpringBoot+Zookeeper+Dubbo编写代码准备安装Zookeeper zookeeper下载与安装搭建环境项目结构如下图所示,用IDEA创建工程dubbo_hello,并创建三个modul...

2019-10-06 11:45:06

(八)装饰者模式

一、概念动态的将责任附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的替代方案控制对象行为二、基本内容适用场景:扩展一个类的功能或者给一个类添加附加职责给一个对象动态的添加功能,或动态撤销功能。优点:继承的有力补充,比继承灵活,不改变原有对象的情况下给一个对象扩展功能通过使用不同装饰类以及这些类的排列组合,可以实现不同的效果符合开闭原则缺点:...

2019-10-05 23:41:05

(七)适配器模式

文章目录一、概念二、基本内容三、代码示例(1)定义被适配的类(2)定义目标接口(3)定义适配类(4)测试调用(5)对象适配器四、类图五、应用场景一、概念将一个类的接口,转化成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间“对象”适配器:使用组合“类”适配器:使用继承将一个接口转化成另一个接口二、基本内容Target(目标抽象类):目标抽象类定义客户所需接口,可...

2019-10-05 23:26:11

(九)代理模式

文章目录一、概念二、基本内容三、代码示例(1)创建公共接口(2)创建代理对象(3)创建真实对象(4)测试调用四、类图五、应用场景一、概念为另一个对象提供一个替身或占位符以控制对这个对象的访问使用代理模式创建代表对象,让代表对象控制某对象的访问,被代理的对象可以是远程的对象、创建开销大的对象或需要安全控制的对象控制对象访问二、基本内容RealSubject通常是真正做事的对象,pr...

2019-10-05 23:23:41

(十五)策略模式

文章目录一、概念二、编写步骤三、案例(1)定义策略接口(2)定义策略实现类(3)定义环境角色(4)测试调用四、类图五、应用场景一、概念定义了算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户简化if-else操作,方便扩展本质:少用继承,多用组合二、编写步骤1、定义抽象策略接口2、编写具体的策略实现类3、定义环境角色,持有策略引用三、案例...

2019-10-05 23:21:24

(二十三)模板方法模式

文章目录一、概念二、基本内容三、在父类中增加钩子四、案例(1)定义抽象父类(2) 定义子类(3)测试调用五、类图六、应用场景七、和策略模式比较一、概念在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤二、基本内容1、父类抽象出子类共有的方法,并自己实现他2、子类实现各自不同的业务3、父类实现的方法按照一...

2019-10-05 23:17:16

(五)抽象工厂模式

一、概念提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类使用对象组合,对象的创建被实现在工厂接口所暴露出来的方法中二、特点抽象工厂定义了一个接口,所有的具体工厂都必须实现此接口,这个接口包含了一组方法来生产产品抽象工厂模式最大的好处是易于交换产品系列,由于具体工厂类,在一个应用中只需要在初始化的时候出现一次,这就使得改变一个应用的具体工厂变得非常容易抽象工厂模式...

2019-10-05 23:12:05

(二)原型模式

一、概念使用原型实例指定将要创建的对象类型,通过复制这个实例创建新的对象二、用途和优缺点用途:在对象构建过程比较耗时时,可以利用当前系统中已经存在的对象作为原型,对其进行克隆,躲避初始化过程,使得新对象的创建时间大大减少。优点性能良好,Java自带的原型模式是基于内存二进制流的拷贝,比直接new一个对象性能上提升了许多向客户隐藏制造新实例的复杂性简化对象创建的过程,提高效率...

2019-10-05 23:10:35

(四)工厂方法模式

一、概念工厂方法模式是对简单工厂模式进一步的解耦。在工厂方法模式中是一个子类对应一个工厂类,而这些工厂类都实现于一个抽象接口使用继承,把对象的创建委托给子类,子类实现工厂方法来创建对象二、优缺点比较简单工厂模式工厂模式中,要增加产品类时也要相应地增加工厂类,客户端的代码也增加了不少。工厂方法把简单工厂的内部逻辑判断转移到了客户端代码来进行工厂方法模式克服了简单工厂会违背开-闭原则...

2019-10-05 23:09:33

分布式一致性协议

一致性协议在分布式系统中,为了保持事务处理的ACID特性,引入一个称为协调者的组件来统一调度所有分布式节点的执行逻辑,这些被调度的分布式节点则被称为参与者。协调者负责调度参与者的行为,并最终决定这些参与者是否要把事务正真进行提交。2PC二阶段提交,为了使基于分布式系统架构下的所有节点在进行事务处理过程中能够保持原子性和一致性而设计的一种算法。用来保证分布式系统数据一致性。阶段一:提交事务请...

2019-08-07 23:51:51

数据库索引原理及优化

摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。常见的查询算法及数据结构为什么这里...

2019-08-07 23:37:42

ActiveMQ消息确认机制

背景在巡更组件中,通过下图所示流程获取门禁,报警器事件来完成巡更任务,流程中有两处使用了ActiveMQ来传输消息,那么消息在传输的过程中ActiveMQ是如何保障消息传输的可靠性,本文将通过介绍ActiveMQ的消息确认机制来进行分析。消息生命周期我们先看一下activemq中,一条消息的生命周期如下图所示:图片中简单的描述了一条消息的生命周期,不过在不同的架构环境中,message...

2019-08-07 23:36:42

【转载】Linux简介及最常用命令

【转载】原文连接: https://blog.csdn.net/xulong_08/article/details/81463054Linux是目前应用最广泛的服务器操作系统,基于Unix,开源免费,由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境。linux不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,如手机、路由器等,Android程序...

2019-08-05 11:21:08

(三)简单工厂

简介工厂方式模式简单工厂是用来封装对象的创建,定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类简单工厂简单工厂算不上是一个设计模式,更趋向于是一种编程习惯,我们通过创建一个工厂类,来封装对对象的创建。public class PizzaStore{ public Pizza orderPizza(String type){ ...

2019-04-27 20:14:56

浅谈ThreadPoolTaskExeuctor配置

章节目录概念配置说明总结概念配置说明总结

2019-01-19 21:28:35

(十九)观察者模式

目录基本简介基本思路基本简介定义:在对象之间定义一种一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会接收到通知,并自动更新基本思路...

2019-01-13 22:07:59

(一)单例模式

定义实现思路实现方式1.饿汉式(静态变量)2.饿汉式(静态代码块)3.懒汉式(非线程安全)4.懒汉式(线程安全,同步方法)5.懒汉式(线程安全,同步代码块)6.双重检查机制7.静态内置类8.枚举定义单例模式是设计模式中最简单的一种模式之一,它指的是一个类只有一个实例,而且自行实例化并运用到整个系统中,这个类称为单例类,提供全局的方法进行访问。构造单例类...

2019-01-09 22:16:17

设计模式概览

设计模式概览一、设计模式的分类二、设计模式的六大准则三、Java中的23种设计模式一、设计模式的分类总的来说设计模式分为3大类创建型模式(5种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式结构型模式(7种):适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式行为型模式(11种):状态模式、策略模式、访问者模式、迭代器模式、命令模式、观察者模式、中介...

2019-01-09 22:10:52
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。