所有分类
  • 所有分类
  • 未分类

Java设计模式–在项目中的应用

简介

本文介绍我在项目中是如何运用设计模式的。面试官如果问:你在项目里是如何使用设计模式的?就可以用本文的内容进行回答。

学完设计模式专栏后,你会发现,下边这些应用场景都是小菜一碟,可以用极其简洁和优雅的方式写出来,而且,你还能灵活应用到其他场景,远远超出本文写的这些。

我实际用到的设计模式有:单例模式责任链模式观察者模式适配器模式策略模式代理模式。其应用场景如下文所述(每种模式都列举了1-3个实际应用)

单例模式的应用

单例模式的作用:保证某个类只有一个实例。

应用1.雪花算法工具类

项目中需要生成全局唯一ID,雪花算法是最常用的方法。需要用单例模式来保证只有一个工具类实例。

雪花算法工具类详见:分布式–雪花算法–使用/原理/实例 – 自学精灵

责任链模式

责任链模式的作用:符合开闭原则(对添加开放,对修改关闭)。新的逻辑只需增加责任链上的一个节点即可,无需改动其他代码。

应用1.用户权限的控制

按顺序校验用户的权限:

  1. token权限
  2. URL权限
  3. 是否已经被管理员禁用

以上三个权限,从上往下按顺序执行,权限校验通过会执行下一个权限校验,如果权限校验不通过则直接报错。

应用2.短信发送的校验

按顺序校验短信的数据:

  1. 是否手机号码在黑名单里
  2. 参数是否合法
  3. 平台的短信功能是否开启

以上三个校验,从上往下按顺序执行,校验通过会执行下一个校验,如果校验不通过则直接报错。

此内容查看价格为1自学币立即购买,VIP免费
0

评论1

请先

  1. 单例模式应用 - 线程池
    天涯浪子心已购买 2024-04-01 0
显示验证码
没有账号?注册  忘记密码?

社交账号快速登录