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

此后就可以直接拿对象

相关推荐
REDcker3 分钟前
Java 语言版本演进与特性概要
java·开发语言
Victor3567 分钟前
MongoDB(65)如何备份MongoDB数据库?
后端
Victor35610 分钟前
MongoDB(66)如何恢复MongoDB数据库?
后端
砍光二叉树12 分钟前
【设计模式】行为型-观察者模式
java·观察者模式·设计模式
庞轩px13 分钟前
AQS(AbstractQueuedSynchronizer)源码深度解析:从CLH队列到ReentrantLock实现
java·并发编程·juc·aqs·reentrantlock
江湖中的阿龙14 分钟前
深入理解 CAS:Java 无锁并发核心原理、缺陷与应用场景详解
java·开发语言
xianjian091214 分钟前
Java进阶-在Ubuntu上部署SpringBoot应用
java·spring boot·ubuntu
拾荒的小海螺14 分钟前
JAVA:Spring Boot3 集成 Spring AI 实现 Prompt 提示词工程
java·spring boot·spring
小旭952715 分钟前
SpringBoot 整合 MyBatis 与自动配置原理详解
java·spring boot·后端·spring·intellij-idea·mybatis
恼书:-(空寄16 分钟前
Seata TCC 生产级(空回滚+悬挂+幂等)+ AT/TCC 混合使用
java·seata·分布式事务