自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设计模式之桥梁模式

桥梁模式的用意是将抽象化(Abstraction)与实现化(Implementation)脱耦,使得二者独立的变化。脱藕所谓耦合,就是两个实体的行为的某种强关联。而将它们的强关联去掉,就是耦合的脱耦。脱耦是指将抽象化和实例化之间的耦合解脱开,或者是将它们之间的强关联改成弱关联。在java语言中,继承关系是强关联,而聚合关系是弱关联。结构桥梁模式的主要角色组成:抽象化(Abstract...

2020-01-08 17:53:37 184

原创 设计模式之享元模式

享元模式(Flyweight):使用共享对象可有效的支持大量的细粒度的对象。享元模式的宗旨是共享细粒度对象,将多个对同一对象的访问集中起来,不必为每个访问者创建一个单独的对象,以此来降低内存的消耗。它把对象的信息分为两个部分:内部状态和外部状态。内部状态:指对象共享出来的信息,存储在享元对象内部并且不会随环境的改变而改变。外部状态:指对象得以依赖的一个标记,是随环境改变而改变的、不可共享的...

2020-01-08 09:52:15 101

原创 设计模式之解释器模式

解释器模式(Interpreter),给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。结构解释器模式的主要角色组成:Context(环境类):环境类又称为上下文类,它用于存储解释器之外的一些全局信息,通常它临时存储了需要解释的语句。AbstractExpression(抽象表达式):在抽象表达式中声明了抽象的解释操作,它是所有终结符表达式...

2020-01-06 19:58:51 109

原创 设计模式之状态模式

**状态模式(State Pattern)**允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。结构状态模式的主要角色组成:环境(Context)角色:也叫作上下文,定义客户端需要的接口,并且保留一个具体状态类的实例。这个具体状态类的实例给出此环境对象的现有状态。抽象状态(State)角色:定义一个接口,用以封装环境(Context)对象的一个特定的状...

2020-01-03 17:55:12 65

转载 设计模式之访问者模式

访问者(Visitor)模式:将作用于某种数据结构中的各元素的操作分离出来封装成独立的类,使其在不改变数据结构的前提下可以添加作用于这些元素的新的操作,为数据结构中的每个元素提供多种访问方式。它将对数据的操作与数据结构进行分离,是行为类模式中最复杂的一种模式。结构访问者模式的主要角色组成:抽象访问者(Visitor):定义一个访问具体元素的接口,为每个具体元素类对应一个访问操作 visi...

2020-01-02 17:57:28 53

转载 设计模式之备忘录模式

**备忘录模式(Memento Pattern)**保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为型模式。结构备忘录模式的主要角色组成:发起者(Originator):负责创建一个备忘录,并且可以记录、恢复自身的内部状态。可以根据需要决定Memento保存自身的那些内部状态。备忘录(Memento):用于存储Originator的状态,防止Originator以外...

2020-01-01 17:47:03 60

原创 设计模式之面门模式

门面模式:要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。最核心的目的:简化子系统,简化客户使用,屏蔽多个子系统。结构门面模式的主要角色组成:门面(Facade)角色:客户端可以调用这个角色的方法。此角色知晓相关的(一个或者多个)子系统的功能和责任。在正常情况下,本角色会将所有从客户端发来的请求委派到相应的子系统去。子系...

2019-12-31 17:48:03 196 1

原创 设计模式之观察者模式

观察者模式(Observer),又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。...

2019-12-31 09:33:40 59

转载 设计模式之组合模式

组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。结构组合模式的主要角色分为:抽象组件角色(Component):定义系统各层次对象的共有方法和属性,可以预先定义一些默认行为和属性。叶子角色(Leaf):在组合中...

2019-12-29 23:23:00 71

原创 设计模式之适配器模式

适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。适配器模式主要分为三类:类适配器模式、对象适配器模式。结构适配器模式的主要角色组成:目标角色(Target):目标抽角色定义客户所需接口,可以是一个抽象类或接口,也可以是具体类...

2019-12-26 17:56:35 75

原创 设计模式之装饰模式

装饰模式指的是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。结构装饰模式的主要角色组成:抽象类/接口(Component):定义最核心的对象,装饰类和被装饰类的基类。被装饰类(ConcreteComponent):具体构件,通过继承实现Component抽象类中的抽象方法。最核心、最原始、最基本的接口或抽象类的实现...

2019-12-25 19:12:42 68

原创 设计模式之策略模式

策略模式:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。比如,商场搞活动的时候,会有打折、满减、返券等优惠活动,而这些优惠就是策略,它们之间可以相互替换。结构策略模式的主要角色组成:上下文角色(Context):用来操作策略的上下文环境,屏蔽高层模块(客户端)对策略,算法的直接访问,封装可能存在的变化。抽象策略角色(Strategy):定义每个策略或算法必须具有的方法...

2019-12-25 17:51:57 63

转载 设计模式之命令模式

命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。结构命令模式的主要角色有:命令(Command):为所有命令声明了一个接口。调用命令对象的 execute()方法,就可以让接收者进行相关的操作。这个接口也具备一个 undo(...

2019-12-21 18:09:00 59

转载 设计模式之中介者模式

中介者模式定义一个封装一组对象如何交互的对象(通过使对象明确地相互引用来促进松散耦合,并允许独立地改变它们的交互)结构中介者模式的主要角色有:Mediator:抽象中介者,定义了同事对象到中介者对象之间的接口。ConcreteMediator:具体中介者,实现抽象中介者的方法,它需要知道所有的具体同事类,同时需要从具体的同事类那里接收信息,并且向具体的同事类发送信息。Colleagu...

2019-12-20 17:58:12 82

原创 maven+spring boot+ssm超简单整合

使用工具idea、maven使用技术spring boot+mybatis+spring+spring mvc一、创建maven项目选择maven,点击next输入groupId(组名),artifactId(项目名),点击next选择项目存放位置,点击finish,创建项目。二、编写pom.xml<?xml version="1.0" encoding="UTF-8"?...

2019-12-20 12:06:28 442

原创 设计模式之原型模式

原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。结构原型模式主要有三个角色:客户端角色:提出拷贝对象的需求。抽象原型角色:定义了拷贝的方法。具体原型角色:实现抽象原型角色的克隆接口。就是我们的文件实现了可以被复制的功能。优缺点优点:性能提高,逃避构造函数的约束。缺点:配备...

2019-12-19 18:00:45 51

原创 设计模式之代理模式

代理模式:为某个对象提供一个代理对象,并且由代理对象控制对原对象的访问。代理对象就像是生活中的中介。当我们去买房时,我们不会直接去找房源,而是通过房产中介,通过沟通,选择我们想要的房子。结构主要角色抽象角色。通过接口或抽象类声明真实角色实现的业务方法。代理角色。实现抽象角色,是真实角色的代理,通过真实角色的业务逻辑方法来实现抽象方法,并可以附加自己的操作。真实角色。实现抽象角色,定义...

2019-12-18 20:12:02 79 1

转载 设计模式之建造者模式

建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。模式结构产品角色(Product):它是包含多个组成部件的复杂对象,由具体建造者来创建其各个子部件。抽象建造者(Builder):它是一个包含创建产品各个子部件的抽象方法的接口,通常还包含一个返回复杂产品的方法 getRes...

2019-12-17 18:02:52 49

原创 设计模式之模板方法模式

模板方法模式定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实践方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤。实现步骤:定义一个抽象类,在类中定义每一步操作的抽象方法,再定义一个final的运行模板方法,使子类无法修改操作流程,只能修改每步操作的具体功能。//定义一个game抽象类public abstract class Game { abstract ...

2019-12-17 09:36:10 58

转载 设计模式之工厂模式

一、简单工厂模式简单工厂的定义:提供一个创建对象实例的功能,而无须关心其具体实现。被创建实例的类型可以是接口、抽象类,也可以是具体的类实现汽车接口public interface Car { String getName();}奔驰类public class Benz implements Car { @Override public String getNa...

2019-12-14 18:02:02 75

原创 设计模式之单例模式

单例模式指一个类只有一个实例,以节省资源。创建单例模式的主要步骤:私有构造方法创建一个私有的、静态的实例创建共有的、静态的方法,返回实例饿汉模式 //饿汉模式 public Class Singleton { private Singleton(){} private static Singleton instance = new Singleton(); public s...

2019-12-13 18:05:00 42

原创 面向对象六大设计原则

1.单一职责原则每一个类只能有一个职责,不能在一个类中编写多个职责不同的方法,不利于代码的维护。职责单一使得每个类分工明确,代码可读性较高,易于维护。2.开闭原则类对外拓展呈开放状态,对内改变呈闭合状态。3.里氏替换原则所有引用基类的地方必须能够透明地使用其子类的对象。即所有使用父类的地方,可以替换成其子类,这就表明子类不可以重写父类的非抽象方法,只可实现父类的抽象方法;子类可以扩展新的...

2019-12-12 18:19:57 65

原创 AOP实现日志管理

AOP实现日志管理做项目时,往往需要一个日志管理功能来记录用户的操作记录。实现日志管理的方式有很多,主要用过滤器、拦截器、AOP等,本文将详细介绍用AOP来实现操作日志的管理。主要步骤如下:创建自定义注解package javax.annotation;import java.lang.annotation.*;@Target(ElementType.METHOD)@Retenti...

2019-10-07 19:23:42 1775

原创 Java管理后台框架基本使用说明

Java管理后台框架基本使用说明本项目管理后台主要采用了SSM。SpringBoot框架,其文件分类如下图所示。本文将主要对Controller、Service、Mapper、工具类的使用编写进行说明。1.Controller 使用Controller是控制层,主要负责业务调度,接受前端传来的请求并返回数据,实现前后端的数据交互。Controller主要用到的注解有@Controller...

2019-09-04 15:50:46 602

空空如也

空空如也

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

TA关注的人

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