获取Spring ApplicationContext 几种方法
来源:互联网 发布:php把字符串变成数组 编辑:程序博客网 时间:2024/06/15 11:26
ApplicationContext ac = new FileSystemXmlApplicationContext("applicationContext.xml");
ac.getBean("beanId");
说明:
这种方式适用于采用Spring框架的独立应用程序,需要程序通过配置文件手工初始化Spring的情况。
方法二:通过Spring提供的工具类获取ApplicationContext对象
代码:
import org.springframework.web.context.support.WebApplicationContextUtils;
ApplicationContext ac1 = WebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext sc)
ApplicationContext ac2 = WebApplicationContextUtils.getWebApplicationContext(ServletContext sc)
ac1.getBean("beanId");
ac2.getBean("beanId");
说明:
这种方式适合于采用Spring框架的B/S系统,通过ServletContext对象获取ApplicationContext对象,然后在通过它获取需要的类实例。
上面两个工具方式的区别是,前者在获取失败时抛出异常,后者返回null。
方法三:继承自抽象类ApplicationObjectSupport
说明:
抽象类ApplicationObjectSupport提供getApplicationContext()方法,可以方便的获取到ApplicationContext。Spring初始化时,会通过该抽象类的setApplicationContext(ApplicationContext context)方法将ApplicationContext 对象注入。
方法四:继承自抽象类WebApplicationObjectSupport
说明:
类似上面方法,调用getWebApplicationContext()获取WebApplicationContext
方法五:实现接口ApplicationContextAware
说明:
实现该接口的setApplicationContext(ApplicationContext context)方法,并保存ApplicationContext 对象。Spring初始化时,会通过该方法将ApplicationContext 对象注入。
以上方法适合不同的情况,请根据具体情况选用相应的方法。
这里值得提一点的是,系统中用到上述方法的类实际上就于Spring框架紧密耦合在一起了,因为这些类是知道它们是运行在Spring框架上的,因此,系统中,应该尽量的减少这类应用,使系统尽可能的独立于当前运行环境,尽量通过DI的方式获取需要的服务提供者。
希望对你有帮助!多baidu baidu是老师
- Spring获取webapplicationcontext,applicationcontext几种方法
- spring获取webapplicationcontext,applicationcontext几种方法
- 获取Spring ApplicationContext 几种方法
- spring获取webapplicationcontext,applicationcontext几种方法
- 【spring框架】spring获取webapplicationcontext,applicationcontext几种方法详解
- Spring获取WebApplicationContext与ApplicationContext的几种方法分析
- spring获取webapplicationcontext,applicationcontext几种方法详解
- Spring获取WebApplicationContext与ApplicationContext的几种方法分析
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取webapplicationcontext,applicationcontext几种方法详解
- spring获取WebApplicationContext,applicationContext几种方法详解
- Spring获取webapplicationcontext,applicationcontext几种方法详解
- soj 4389模拟
- jython语法
- android 事件分发
- 密码生成器
- 第17周项目6-学生成绩统计(从文件中读入)
- 获取Spring ApplicationContext 几种方法
- View中的draw和onDraw的区别
- ERLANG 语法基础
- Exercise:Self-Taught Learning 代码示例
- Android 修改出厂默认日期和默认时区的方法
- STM的调试问题集锦(更新中)
- 视锥裁剪
- ios 中内容label高度自适应
- Linux下Redis启动/关闭/重启服务脚本