SpringBoot实现策略+工厂模式

背景 场景一: 假设我们要做一个外卖平台,有这样的需求: 外卖平台上的某家店铺为了促销,设置了多种会员优惠,其中包含超级会员折扣8折、普通会员折扣9折和普通用户没有折扣三种。 希望用户在付款的时候,根据用户的会员等


SpringBoot实现责任链模式

一、什么是责任链模式 责任链模式是行为设计模式,在责任链模式中,多个处理器依次处理同一个请求。一个请求先经过 A 处理器处理,然后再把请求传递给 B 处理器,B 处理器处理完后再传递给 C 处理器,以此类推,形成一个链条,链条上的每个处理器各自承担各自的处理职责。 这种模式的主要优点是降低了请求发送


SpringBoot实现模板+策略+简单工厂模式

背景 随着业务不断发展,订单资源模块会对接越来越多的产品,代码量也随之不断增长。本篇文章主要介绍如何结合模板模式和策略模式来重构订单模块,从而避免业务增长带来的代码重复和维护困难的难题 用户在页面上下单,订单创建模块会进行订单创建、创建成功之后会发送一条rocketMq消息,由订单资源模块接收roc


布隆过滤器实战

场景 首先,明确我们的场景,就是在用户注册的时候查询一下用户名和账户是否已经存在了,这个是一个很基础的问题,这里我们主要列举三种方案,并且列举一下这三种方案的优缺点 第一种是直接查询数据库请求用户名是否存在 在查询数据库之前加一层缓存 使用布隆过


敏感数据脱敏实现

前言 在开发中,我们经常会处理一些敏感信息,敏感信息包括但不限于手机号码、身份证号、银行卡号等,这些信息泄露可能导致用户个人信息的滥用、身份盗用等严重问题。脱敏是一种常用的保护用户隐私的方式,它的目的是减少潜在的风险,同时保持一定的用户信息可读性。 比如咱们在选择用户信息以及展示选座信息时,用户证件


基于自定义注解+AOP实现日志记录

一、@interface 关键字 我们想定义一个自己的注解 需要使用 @interface 关键字来定义。 如定义一个叫 MyAnnotation 的注解: public @interface MyAnnotation {} 二、元注解 光加上 @interface 关键字 还不够,我


枚举的使用

一、基本概述 1.1 概念 在Java中,被 enum 关键字修饰的类型就是枚举类型。 如果枚举不添加任何方法,枚举值默认为从0开始的有序数值 枚举的好处:可以将常量组织起来,统一进行管理 枚举的典型应用场景:错误码、状态机、字典等 二、例子