ipv4 Python爬虫实战 sqlalchemy 管理后台模板 nginx视频 jquery延时 jq获取元素宽度 bootstrap颜色 mysql事务 python3基础教程 python内置库 python处理json文件 python自定义异常 java文件流 java有哪些数据类型 java正则表达式详解 javalist java替换字符串 java自学编程入门教程 java格式化日期 java系统学习 linux密码忘记 linux的安装 超级煎蛋卷 高效能人士的七个习惯pdf crazytalk idataparameter collect 数组求和 t470拆机 微信公众号点餐系统 pr动态字幕 小米游戏鼠标 b450 斐讯k3刷机 js对象转字符串 快剪辑怎么录制视频 gif动画制作工具 python绝对值 ps图层蒙版实例教程
当前位置: 首页 > 学习教程  > 编程语言

Spring中的各种ApplicationContext

2020/8/31 13:54:56 文章标签:

应用上下文负责装载Bean的定义并把它们组装起来。应用上下文有多个实现,不同的实现区别在于加载配置的方式不同。

  1. ApplicationContext

为应用程序提供配置的中央接口。当应用程序运行时,这个接口是只读的,但如果实现支持的话,可以重载。
一个ApplicationContext提供了:

  • 用于访问应用程序组件的Bean工厂方法。继承自ListableBeanFactory。
  • 以通用方式加载文件资源的能力。继承自ResourceLoader接口。
  • 将事件发布到注册的监听器的能力。继承自ApplicationEventPublisher接口。
  • 解析消息的能力,支持国际化。继承自MessageSource接口。
  • 从父上下文继承。下级上下文中的定义总是优先的。这意味着,例如,一个单一的父上下文可以被整个Web应用程序使用,而每个servlet有自己的子上下文,它独立于任何其他servlet的上下文。

除了标准的BeanFactory生命周期功能之外,ApplicationContext实现还可以检测和调用ApplicationContextAware beans以及ResourceLoaderAware、ApplicationEventPublisherAware和MessageSourceAware beans。

  1. WebApplicationContext

为web应用提供配置的接口。在应用程序运行时,这个接口是只读的,但如果实现支持的话,可以重载。
这个接口在通用ApplicationContext接口上增加了一个getServletContext()方法,并定义了一个众所周知的应用属性名,根上下文必须在引导过程中绑定到这个属性名。
与通用应用上下文一样,Web应用上下文也是分层的。每个应用程序有一个单一的根上下文,而应用程序中的每个servlet(包括MVC框架中的dispatcher servlet)都有自己的子上下文。
除了标准的应用上下文生命周期功能外,WebApplicationContext实现还需要检测ServletContextAware beans,并相应调用setServletContext方法。

  1. AnnotaionConfigApplicationContext

  2. AnnotationConfigWebApplicationContext

  3. ClassPathXmlApplicationContext

  4. FileSystemXmlApplicationContext

  5. XmlWebApplicationContext

image.png


本文链接: http://www.dtmao.cc/news_show_150134.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?