spring

使用工厂模式去进行ioc解耦

使用v1

就是使用工厂去创建对象

csharp 复制代码
package com.healer.beanFactory_v1;

import com.healer.mapper.UserMapper;
import com.healer.mapper.impl.UserMapperImpl;
import com.healer.service.UserService;
import com.healer.service.impl.UserviceImpl;

/**
 * @author healer
 * @Description BeanFactory_v1
 * @data 2024-06-13 17:14
 */
public class BeanFactory_v1 {

    public static UserService getUserService() {
        return new UserviceImpl();

    }


    public static UserMapper getUserMapper() {
        return new UserMapperImpl();

    }

}

使用 v2版本

加载properties进行创建对象

需要使用 user.properties

首先创建这个的作用是

需要使用工厂去创建对象

那么就需要配置对象的属性

csharp 复制代码
userMapper=com.healer.mapper.impl.UserMapperImpl
userService=com.healer.service.impl.UserviceImpl

然后再 beanfactory中去创建对象

通过name去获取

这个版本获取的bean对象也不是单例的

所以引入v3版本

使用的是ioc思想

当类加载的时候 对象就以及实例化完成并加载到ioc容器中

这个容器是,map集合

然后再静态代码块中将对象加入到map容器中

此后就可以直接拿对象

相关推荐
梦想很大很大17 分钟前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
唐叔在学习37 分钟前
就算没有服务器,我照样能够同步数据
后端·python·程序员
用户68545375977691 小时前
同步成本换并行度:多线程、协程、分片、MapReduce 怎么选才不踩坑
后端
javaTodo1 小时前
Claude Code 记忆机制详解:从 CLAUDE.md 到 Auto Memory,六层体系全拆解
后端
LSTM972 小时前
使用 C# 和 Spire.PDF 从 HTML 模板生成 PDF 的实用指南
后端
JaguarJack2 小时前
为什么 PHP 闭包要加 static?
后端·php·服务端
BingoGo2 小时前
为什么 PHP 闭包要加 static?
后端
是糖糖啊3 小时前
OpenClaw 从零到一实战指南(飞书接入)
前端·人工智能·后端
百度Geek说3 小时前
基于Spark的配置化离线反作弊系统
后端