构造函数实现依赖注入

构造函数注入 是依赖注入(Dependency Injection)的一种形式,它允许您在创建对象时,将对象所需的依赖项通过构造函数传递给它 ,而不是在对象内部自己创建或查找这些依赖项。这有助于增强代码的可测试性和可维护性,因为它允许您轻松地替换依赖项的实现(例如,在测试环境中使用模拟对象)。

定义接口实例

定义了一系列私有、不可变的(final)字段来存储Mapper和Service接口的实例 。这些字段将用于在ServiceImpl(实现类)的方法中执行数据库操作或调用其他服务。

java 复制代码
private final ProdOrderDealMapper prodOrderDealMapper;

private final SchoolCardEnrollmentMapper schoolCardEnrollmentMapper;

定义构造函数

java 复制代码
 public SchoolCardServiceImpl(ProdOrderDealMapper prodOrderDealMapper,
                                 SchoolCardEnrollmentMapper schoolCardEnrollmentMapper) {
        
        this.prodOrderDealMapper = prodOrderDealMapper;
        this.schoolCardEnrollmentMapper = schoolCardEnrollmentMapper;
    }

这是一个构造函数,它接受多个参数(Mapper和Service接口的实现)并将它们分别赋值给上面定义的字段。通过这种方式,您可以确保在创建SchoolCardServiceImpl的实例时,所有的依赖项都已经被正确地注入。

方法中使用:

java 复制代码
   @Override
    public Map<String, Object> SchoolCardEnrollment(Map<String, Object> params) {
        schoolCardEnrollmentMapper.insertSchoolCardEnrollment();
        return null;
    }

这样就实现了构造函数式的依赖注入啦!!!

相关推荐
编程风暴17 分钟前
零基础数据分析项目模板+5条避坑红线
java·数据挖掘·数据分析
IKUN家族17 分钟前
常见的依懒
java·服务器·数据库
m0_5191964018 分钟前
【设计模式】java的习题
开发语言·python
我命由我1234529 分钟前
Jetpack Compose - Material Design 断点范围、WindowSizeClass、针对不同屏幕尺寸创建预览、四类导航栏
android·java·开发语言·java-ee·kotlin·android jetpack·android runtime
linux-hzh30 分钟前
百日算法修炼 · Day 05
java·算法
摇滚侠42 分钟前
云原生 Java 架构师的第一课 K8s+Docker+KubeSphere+DevOps 89-129
java·云原生·kubernetes
captain3761 小时前
多线程进阶
java·开发语言·数据库
思麟呀1 小时前
C++(八):文件系统库+并行算法
开发语言·c++
雨辰AI2 小时前
人大金仓 K8s 密评合规加固|国密全链路加密 + 权限收敛容器化落地(三级密评直通版)
java·云原生·容器·kubernetes·政务
郑州光合科技余经理7 小时前
代驾系统架构拆解:订单链路、权限组织与私有化源码交付
开发语言·后端·算法·架构·系统架构·uni-app·php