摘要:
参考:动态数据源切换——@DS 注解源码解析 前言 借助 dynamic-datasource 可实现多数据源读写,其核心注解@DS用来动态切换数据源。 下面介绍@DS注解的实现原理。 如何使用 在 pom 中引入依赖: <!-- spring-boot 1.5.x 2.x.x --> <depen 阅读全文
摘要:
JDBC 是什么 JDBC 是 Java DataBase Connectivity 的缩写,是由一组用 Java 语言编写的类和接口,用于在 Java 应用程序中与数据库进行交互。 JDBC 只是一套标准规范,具体的实现由各个数据库厂商去实现。对开发者来说其屏蔽了不同数据库之间的区别,可以使用相同 阅读全文
摘要:
MyBatis 拦截器介绍 MyBatis 提供了一种插件(即 MyBatis 拦截器)机制,可以拦截到 MyBatis 执行流程中的某些操作,从而实现一些特殊的功能。常见的应用场景比如分页、权限控制、日志打印、性能监控等。 MyBatis 拦截器使用 大致分两步: 创建拦截器类:实现Interce 阅读全文
摘要:
假定为在单机场景下使用,且为经典的 SpringBoot 项目(用到 SpringBoot、Spring、SpringMVC、MyBatis 等框架) 引入依赖 在 pom.xml 中添加依赖: <dependency> <groupId>org.springframework.boot</grou 阅读全文
摘要:
介绍 定义:模板方法模式在一个方法中定义一个算法的骨架,将一些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义该算法的某些步骤。 示例: /** * 咖啡因饮料冲泡法 */ public abstract class CaffeineBeverage { /** * 模板 阅读全文
摘要:
推荐阅读:策略设计模式 示例 假设有一个支付系统,需要支持使用不同的支付方式(策略),我们可以抽象出一个策略接口,然后定义具体的策略类来实现该接口。 策略接口: public interface PaymentStrategy { void pay(int amount); } 具体策略: publ 阅读全文
摘要:
介绍 工厂方法模式定义了一个用于创建对象的接口,由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。 在工厂方法模式中,创建对象的工作由具体的工厂类来完成,客户端只需要知道所需产品的具体工厂,而无需关心创建细节。 示例 下面是一个简单的工厂方法模式的示例代码: // 抽象产品类 inte 阅读全文
摘要:
介绍 简单工厂模式(又称静态工厂模式):定义一个创建对象的类,由这个类来封装实例化对象的行为。 简单工厂模式应用场景:当我们需要根据传入的参数来动态创建对象时,可以使用简单工厂模式。 简单工厂模式的角色: 工厂类(Creator):负责创建产品的类。在简单工厂模式中,工厂类提供了一个静态方法,根据传 阅读全文
摘要:
总结自:一文吃透 Spring Boot 扩展之 BeanFactoryPostProcessor 概述 BeanFactoryPost、Spring 的 BeanDefinitionRegistryPostProcessor 接口详解 什么是 BeanFactoryPostProcessor Be 阅读全文
摘要:
原文:如何使用 Spring 的 FactoryBean 接口 在 Spring 容器中有两类的 Bean,一类是普通的 Bean,一类是工厂 Bean。这两种 Bean 都是被 Spring 的容器进行管理的。而 Spring 也提供了一个接口用于扩展工厂 Bean,我们只要实现org.sprin 阅读全文