• 基于注解实现策略模式

    基于注解实现策略模式

    背景: 在佣金项目时,查询佣金总额接口根据dbType的不同走的不同的if else逻辑;然后让改为策略模式的实现,这里将整个改造的过程记录在此; 123456789101112// 原始代码如下if(dbType == 1){ ...
  • 责任链模式

    责任链模式

    具体代码见LocalDemo之shejimoshi模块 在源码中典型应用:Netty 中的 Pipeline和ChannelHandler通过责任链设计模式来组织代码逻辑。Spring Security 使用责任链模式,可以动态地添加或删除责任(处理...
  • 代理模式

    代理模式

    具体代码见LocalDemo之shejimoshi模块 代理模式很简单,只要记住以下关键点,简单易实现: 代理类与委托类实现同一接口 在委托类中实现功能,在代理类的方法中中引用委托类的同名方法 外部类调用委托类某个方法时,直接以接口指向代理类的实例...
  • 工厂模式

    工厂模式

    具体代码见LocalDemo之shejimoshi模块 举个例子,比如我们要做文件解析,那么我们可能用xml,json,text,html等;那么我就建四个对应的工厂,封装对应的解析方法就好;调用时只用根据文件类型获取对应的工厂,调用对应的解析方法即...
  • 建造者模式

    建造者模式

    具体代码见LocalDemo之shejimoshi模块 就是我们链式编程的各种builder的实现;它将产品和构建过程做了个拆分,例如我们创建一个电脑,那么需要组装显示屏,需要组装主机;主要做法是抽象构建过程,再由一个实现类来实现抽象类,通过各种bu...
  • 观察者模式

    观察者模式

    观察者模式适用于发布订阅的场景,具体代码见LocalDemo之shejimoshi模块;关键点:1、针对观察者与被观察者分别定义接口,有利于分别进行扩展。2、重点就在被观察者的实现中:  (1)定义观察者集合,并定义针对集合的添加、删除操作,用于增加...
  • 模板模式

    模板模式

    具体代码见LocalDemo之shejimoshi模块 模板模式是在抽象父类中公开定义方法,可以将一些通用的方法封装在这个方法中,子类可以根据需要来覆盖重写父类中的方法;如果想限定哪些方法子类不可重新,则将其方法声明为final修饰;
  • 门面模式

    门面模式

    具体代码见LocalDemo之shejimoshi模块 门面模式(Facade Pattern) 又叫外观模式,提供了一个统一的接口,用来访问子系统中的一群接口 。其主要特征是定义了一个高层接口,让子系统更容易使用,属于结构型模式。在我们日常编码中也...
  • 装饰器模式

    装饰器模式

    具体代码见LocalDemo之shejimoshi模块 装饰器模式(Decorator Pattern) 也称为包装模式(Wrapper Pattern) 是指在不改变原有对象的基础之上,将功能附加到对象上,提供了比继承更有弹性的替代方案(扩展原有对...
  • mac虚拟机搭建&设置静态ip

    mac虚拟机搭建&设置静态ip

    搭建步骤mac下载VMwareFunction下载地址vMware针对个人开发者是免费的,用邮箱填写一个账号,填写个人信息即可获取激活码,这个自己摸索即可 下载虚拟机镜像ali镜像 镜像安装启动vMware,将下载的镜像拖到vMware中即可,为了...
123411