Spring中的ApplicationContext和BeanFactory的区别??

ApplicationContext:只要一读取配置文件,默认情况下就会创建对象。

UserServiceImpl:

java 复制代码
package com.by.service;

import com.by.dao.UserDao;

/**
 * 业务层实现类
 */
public class UserServiceImpl implements UserService {
  
    private UserDao userDao;
    public UserServiceImpl() {
        System.out.println("使用构造方法创建对象");
    }

   

}

测试:在main方法中

java 复制代码
new ClassPathXmlApplicationContext("applicationContext.xml");
        System.out.println("spring ioc 容器创建好了");

结果:

BeanFactory:是在 getBean 的时候才会创建对象。

UserServiceImpl:

java 复制代码
package com.by.service;

import com.by.dao.UserDao;

/**
 * 业务层实现类
 */
public class UserServiceImpl implements UserService {
  
    private UserDao userDao;
    public UserServiceImpl() {
        System.out.println("使用构造方法创建对象");
    }
}

测试:在main方法中

java 复制代码
//BeanFactory在getBean是才会创建
        XmlBeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
        UserService userService = (UserService) beanFactory.getBean("userService");
        //System.out.println(userService);
        System.out.println("spring ioc 容器创建好了");

结果展示:

相关推荐
一水23 分钟前
TTFT优化:一个方案的5次推倒重来
java·ai·状态模式
AC赳赳老秦29 分钟前
CSDN 技术社区数据采集:OpenClaw 抓取公开技术热帖,生成领域技术热点周报
java·大数据·前端·数据库·python·php·openclaw
结网的兔子38 分钟前
【前端开发】Web端迁移至 uni-app 及鸿蒙扩展方案对比
前端·uni-app·harmonyos
磁爆步兵1 小时前
内存分区:程序运行的核心秘密
java·开发语言·jvm
水瓶夜之1 小时前
.NET 中的新增功能系列文章——.NET SDK中的新增功能
前端·chrome·.net
流星白龙2 小时前
【Docker】4.NameSpace空间隔离实战
java·运维·docker
笨笨狗吞噬者2 小时前
VS Code 内置浏览器打开网页
前端
SamChan902 小时前
WebSocket实现PDF翻译进度实时推送:Go后端+React前端的完整方案
前端·websocket·pdf·c#·react·机器翻译
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题 第207题】【09_Zookeeper篇】第8题:谈谈 ZooKeeper 的可靠性保障机制
java·zookeeper·高可用·可靠性·分布式系统
harmful_sheep2 小时前
maven多版本包导致java.lang.NoClassDefFoundError
java·maven