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 容器创建好了");

结果展示:

相关推荐
sTone8737513 小时前
Android核心概念(一)minSdkVersion targetSdkVersion compileSdkVersion
android·前端
.ZGR.13 小时前
第十六届蓝桥杯省赛 C 组——Java题解1(链表知识点)
java·算法·链表·蓝桥杯
林太白13 小时前
八大数据结构
前端·后端·算法
一 乐13 小时前
流浪动物救助|流浪猫狗救助|基于Springboot+vue的流浪猫狗救助平台设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设
火星数据-Tina13 小时前
Python + WebSocket 实现实时体育比分系统(含数据库设计与前端演示)
开发语言·前端
国思RDIF框架13 小时前
国思RDIF低代码快速开发框架 v6.2.2版本发布
前端·vue.js·后端
Java水解13 小时前
Java基础------真实大厂面试题汇总(含答案)
java·后端·面试
oil欧哟13 小时前
Agent 设计与上下文工程- 02 Workflow 设计模式(上)
前端·网络·人工智能
StarkCoder13 小时前
GetX 状态管理优化:从 GetBuilder 到 Obx 的性能提升实践
前端
小高00713 小时前
深入理解 package.json:前端项目的 "身份证"
前端·javascript·vue.js