-
mybatisli逆向工程
新做项目,怎么能少得了crud;之前有写过mybatis-plus的逆向工程,那么如果你正在搞新项目,并且你的项目还是用的mybatis,那么有必要折腾下mybatis的逆向工程;废话不多说开干! 引入依赖12345<dependency&... -
idea项目同步到gitee及github
最近一小老弟问我怎么将idea中的项目上传到gitee,他说网上看的都有坑,啊这。。。好吧,本篇文章来实践一下 操作步骤1.gitee上新增仓库 2.idea中选择vcs,项目下生成.git 文件vcs->import into Versi... -
基于注解实现策略模式
背景: 在佣金项目时,查询佣金总额接口根据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) 又叫外观模式,提供了一个统一的接口,用来访问子系统中的一群接口 。其主要特征是定义了一个高层接口,让子系统更容易使用,属于结构型模式。在我们日常编码中也...