全局使用一个对象,不需要再去new新的对象,直接使用枚举就是单例模式
springboot使用工厂模式+策略模式_我是一只代码狗的博客-CSDN博客
减少参数的传递,在内部创建对象,不对外直接暴露创建对象,链式调用
在项目中使用SpringSecurity 和StringBuilder 都是使用的建造者模式
下面的就是链式调用,返回StringBuilder对象
代理一个方法,对其进行增强操作,不改变原有的代码,可以做日志,权限,限流,事物
在项目中使用aop就是代理模式
springboot中使用原型模式_我是一只代码狗的博客-CSDN博客
就是我们的控制层Controller,前端只能访问控制层,不能直接访问service,前后分离
就是有一个接口想要适配多个支付功能,前端选择支付宝支付,微信支付,控制层调用的是同一个方法,在方法内部通过if else判断去调用对应的支付接口,这就是适配器模式
springboot中的桥接模式+装饰器模式_我是一只代码狗的博客-CSDN博客
组合模式就是根据树形结构来组成一个对象,例如组织机构树形菜单
享元模式就是减少对象的创建,减少内存的占用
例如:Integer.valueOf 如果缓存池中存在,直接从缓存池拿,缓存池不存在,才创建对象
或者使用map,去判断这个对象存不存在,存在直接拿,不存在,才创建新的对象
springboot中使用责任链模式_我是一只代码狗的博客-CSDN博客
命令模式就是把请求的操作封装成一个对象,请求和执行分开,不需要关心 他是怎么调用内部的命令去执行的,只需要把命令发给这个中间人,由这个中间人来转发不同的命令
例如:我们使用mq发送消息,就是命令模式,在控制层发送命令,到mq,
在其他系统去接收这个命令去调用不同的接口
或者通过XXL-JOB设置了一个定时任务的命令,在某一个时刻去触发,这也是命令模式
迭代器模式就是顺序的执行集合内部的对象信息,不需要关系集合内部的实现
Iterator就是迭代器,我们的集合中使用的就是迭代器的用于遍历对象信息
中介者模式就是降低多个类和对象之间访问的复杂性,通过一个中介去获取数据
controller通过中介service访问dao,dao返回数据到service,service返回数据给controller就是中介者模式
springboot使用观察者模式_我是一只代码狗的博客-CSDN博客
备忘录模式就是保存一个对象的状态,以便在某一时刻恢复对象
例如: 回收站,数据库事物
状态模式就是类的行为根据类的状态改变而改变
例如:工作流中, 发起申请-》经理审批-》流程结束,状态的变化,调用不同的方法进行处理
模板模式就是在一个类定义了方法,他的子类可以进行重写
service接口就是模板模式,定义好接口后,impl进行实现重写接口的方法
访问者模式主要将数据结构和数据操作进行分离,代码比较复杂,仅做了解
解释器模式就是定义一个表达式接口,该接口负责解析上下文,一般用于sql解析,底层条件解析,仅做了解