文档章节

spring-001-Ioc 顶层容器

haoran_10
 haoran_10
发布于 2016/07/15 16:44
字数 266
阅读 3
收藏 0

一、顶层容器

1、org.springframework.beans.factory.BeanFactory

接口提供了IoC容器最基本功能

 

主要的实现类:org.springframework.beans.factory.xml.XmlBeanFactory,4.2.5版本已经注释为过时,不要再使用了。

 

BeanFactory实现,提供基本的IoC容器功能,可以从classpath或文件系统等获取资源;

1.1、从文件系统中初始化beanFactory

File file = new File("fileSystemConfig.xml"); Resource resource = new FileSystemResource(file); BeanFactory beanFactory = new XmlBeanFactory(resource);

1.2、从classpath中初始化beanFactory

Resource resource = new ClassPathResource("classpath.xml"); BeanFactory beanFactory = new XmlBeanFactory(resource);

 

 

 

2、org.springframework.context.ApplicationContext

扩展了BeanFactory,还提供了与Spring AOP集成、国际化处理、事件传播及提供不同层次的context实现 (如针对web应用的WebApplicationContext)

 

主要的实现类:

 

类名

启动方式

从WEB启动

org.springframework.context.support.ClassPathXmlApplicationContext

xml配置方式启动

NO

org.springframework.context.support.AnnotationConfigApplicationContext

注解方式启动

NO

org.springframework.web.context.support.XmlWebApplicationContext 

xml配置方式启动

YES

org.springframework.web.context.support.AnnotationConfigWebApplicationContext

注解方式启动

YES

 

 

简单说, BeanFactory提供了IoC容器最基本功能,而 ApplicationContext 则增加了更多支持企业级功能支持。ApplicationContext完全继承BeanFactory,因而BeanFactory所具有的语义也适用于ApplicationContext。

© 著作权归作者所有

共有 人打赏支持
haoran_10
粉丝 25
博文 88
码字总数 80846
作品 0
杭州
程序员
Spring中ApplicationContext和beanfactory区别

org.springframework.beans及org.springframework.context包是Spring IoC容器的基础。BeanFactory提供的高级配置机制,使得管理任何性质的对象成为可能。ApplicationContext是BeanFactory的扩...

ArlenXu
2015/01/18
0
0
三条路线告诉你如何掌握Spring IoC容器的核心原理

一、前言 前三篇已经从历史的角度和大家一起探讨了为什么会有Spring,Spring的两个核心概念:IoC和AOP的雏形,Spring的历史变迁和如今的生态帝国。本节的主要目的就是通过一个切入点带大家一...

Java小铺
08/27
0
0
深入理解Spring源码(一)-IOC容器的定位,载入,注册

前言:Spring源码继承,嵌套层次非常多,读起来非常容易晕,小伙伴们在看文章的时候一定要跟着文章的思路自己去源码里点一点,看一看,并且多看几次。就会越来越清晰。下面开始正题 1.Spring...

Meet相识_bfa5
05/01
0
0
Spring源码解析系列之IOC容器(一)

前言 实际上我所有的博客都是原来对原来印象笔记里笔记内容的加工,关于Spring源码自己已经解析了很多遍,但是时间长总是忘记,写一篇博客权当加强记忆,也算再次学习下大师们的设计思想,思...

后厂村老司机
06/02
0
0
spring boot源码分析之springmvc(上)

相对于spring boot我们使用spring mvc更加频繁和熟悉。sprint boot具有spring mvc的功能,两者之间到底存在着什么样的关系,通过下面的篇幅我们一起来分析。 我们再回顾下spring mvc的配置,...

帅帅的波
2017/09/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

发生系统错误 5 拒绝访问

1、使用命令net start *开启一个服务的时候,出现发生系统错误5,拒绝访问。 解决:切换到管理员模式执行此命令即可。

fang_faye
22分钟前
1
0
devops 成长路线

https://36kr.com/p/5157249.html

swingcoder
34分钟前
1
0
Java内存区域的划分和异常

行时数据区域 JVM在运行Java程序时候会将内存划分为若干个不同的数据区域。 程序计数器 线程私有。可看作是当前线程所执行的字节码的行号指示器,字节码解释器的工作是通过改变这个计数值来读...

架构师springboot
36分钟前
1
0
kubeadm 安装kubernetes1.12.1

准备环境 服务器 服务器情况: IP 系统版本 角色 Hostname 10.20.13.24 Centos7 64位 minimal master kuber24 10.20.13.25 Centos7 64位 minimal work Kuber25 10.20.13.26 Centos7 64位 mi......

hgfgoodcreate
39分钟前
4
0
腾讯又添 AI 开源项目! 腾讯 AI Lab 正式开源业内最大规模多标签图像数据集

2018年10月17日,腾讯AI Lab宣布正式开源“Tencent ML-Images”项目,地址为https://github.com/Tencent/tencent-ml-images。该项目由多标签图像数据集ML-Images,以及业内目前同类深度学习模...

腾讯开源
46分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部