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容器中

此后就可以直接拿对象

相关推荐
集成显卡1 小时前
Rust实战七 |基于带 colored 颜色文字控制台的批量文件删除工具
开发语言·后端·rust
刀法如飞2 小时前
AI时代:DDD领域驱动建模与Ontology语义建模的区别
java·设计模式·架构
jeffer_liu2 小时前
Spring AI 生产级实战:工具调用
java·人工智能·后端·spring·ai编程
比昨天多敲两行2 小时前
linux 线程概念与控制
java·开发语言·jvm
8Qi82 小时前
LeetCode 75:颜色分类(荷兰国旗问题)—— Java 题解 ✅
java·算法·leetcode·指针·排序
zzhongcy2 小时前
@Transactional 同类内部调用失效 + 两种自代理解决方案
java
Cosolar3 小时前
AutoGen 精通教程:从零到企业级多 Agent 系统架构师
人工智能·后端·面试
AutumnWind04203 小时前
【Intelij IDEA使用手册】
java·ide·intellij-idea
就叫_这个吧4 小时前
Java注解、元注解、自定义注解定义及应用
java·开发语言·注解