`
kewen342757003
  • 浏览: 142975 次
社区版块
存档分类
最新评论

利用Spring提供的接口,在Spring完成加载后获取ApplicationContext

 
阅读更多
前面有一遍博客写了利用监听实现 在Spring加载后,获取到Spring管理的 applicationContext对象。
http://kewen1989.iteye.com/blog/1891124

当初也是常事了Spring提供的接口,但是最后没有实现,没办法的情况下才用了自己写一个监听的方法,后来求助kyfxby大神,明白了当初是哪里出了问题:

这个java类是没有任何问题的
public class ApplicationContextHelper implements ApplicationContextAware
{
    private static ApplicationContext context;

    @Override
    public void setApplicationContext(ApplicationContext contex) throws BeansException
    {
        ApplicationContextHelper.context = contex;
    }

    public static ApplicationContext getContext()
    {
        return context;
    }

}


这个配置也是没有任何问题的
	<!-- 这个bean主要是为了得到ApplicationContext 所以它不需要其它属性-->
	<bean id ="getContext" class="com.kewen.util.ApplicationContextHelper"></bean>


问题就出在了Spring配置文件中的这一句话上:
default-autowire="byName" default-lazy-init="true"
default-lazy-init="true"

这个True会导致Spring延时加载这个bean,当它是工具类,所以这个使用的时候需要改成False

这样,就能实现利用Spring提供的接口获取它的applicationContext了
分享到:
评论
1 楼 zzy2011266 2014-04-23  
点赞!!!简单实用

相关推荐

    Spring中ApplicationContext加载机制

    Spring中ApplicationContext加载机制

    spring中通过ApplicationContext getBean获取注入对象的方法实例

    今天小编就为大家分享一篇关于spring中通过ApplicationContext getBean获取注入对象的方法实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    spring jar 包详解

    spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类...

    Spring_依赖注入_面向接口编程_不同加载方式

    本项目为Java项目,使用Spring实现依赖注入,实现采用ApplicationContext,不再直接使用XmlBeanFactory方式。适合初学者了解Spring依赖注入的实现。

    Spring的IoC容器(《Spring揭秘》的精选版)

    针对Spring框架的主要功能以及开发者们遇到最多的问 题,首先介绍问题的相关背景,然后逐条进行深度剖析,最后通过分析来引入Spring框架可以提供的最佳解决方案。虽言Spring,却不局限于 Spring! 本书目录 目录 ...

    高级开发spring面试题和答案.pdf

    SPI 机制(Java SPI 实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制), 很多地方有用到: AOP Spring的AOP的底层实现原理; 为什么jdk动态代理是必须是接口 两种动态代理的区别 AOP实现方式:...

    第24次课-1 Spring与Hibernate的整合

    Spring提供了org.springframework.orm.hibernate3.HibernateTemplate类和org.springframework.orm.hibernate3.HibernateCallback接口来方便和Hibernate整合。 HibernateTemplate类封装了Hibernate的主要类,它提供了...

    Spring中文帮助文档

    6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入...

    Spring.3.x企业应用开发实战(完整版).part2

    Spring3.0是Spring在积蓄了3年之久后,隆重推出的一个重大升级版本,进一步加强了Spring作为Java领域第一开源平台的翘楚地位。  Spring3.0引入了众多Java开发者翘首以盼的新功能和新特性,如OXM、校验及格式化框架...

    spring源代码解析

    Spring为web应用提供了上下文的扩展接口 WebApplicationContext: 如转载请注明,转载自:关注Java[http://www.gbsou.com] 本文链接: http://www.gbsou.com/2009/08/11/214.html - - Java代码 public ...

    Spring入门.docx

    实例化完成的Bean对象存放在singletonObjects当中。 FileSystemXmlApplicationContext是加载磁盘里具体位置的xml文件。不同环境下会出现不同的容器,比如导入spring-web包时,会有web环境下的容器。 (4)基于xml

    Spring API

    6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入...

    springweb3.0MVC注解(附实例)

    -- Spring MVC 的Servlet,它将加载WEB-INF/annomvc-servlet.xml 的 配置文件, 以启动Spring MVC模块--&gt; &lt;servlet-name&gt;annomvc org.springframework.web.servlet.DispatcherServlet &lt;load-on-startup&gt;2 ...

    spring结合mongodb例子(maven java project)

    例子简单的实现了spring结合mongo的例子 spring:4.1.2 spring-data-mongodb:1.1.0 java:1.8 log4j:1.2.16 junit:4.12 commons-logging:1.1.1 maven:3 注意:spring的不同版本与mongodb结合可能会有问题,自测:...

    CXF WebService整合Spring示例工程代码demo

    CXF WebService整合Spring示例工程代码demo可以直接导入eclipse。...3.applicationContext-server.xml配置服务提供接口 &lt;!-- 注意下面的address,这里的address的名称就是访问的WebService的name --&gt; 4.运行tomcat

    spring技术入门相关源码

    //创建spring的ApplicationContext ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); //输出spring容器 System.out.println(ctx); //打印加载的bean名称 ...

    Spring Boot技术知识点:如何读取不同路径里的applicationContext.xml配置文件1

    Spring Boot技术知识点:如何读取不同路径里的applicationContext.xml配置文件1

    Spring.html

    ClassPathXmlApplicationContext:使用这个工厂创建对象,他会根据scope智能判断是否懒加载,如果是单例则创建容器时就会创建里面bean的实例,如果是多例在获取使用时才会创建bean实例 ...

    spring boot源码

    2. 创建Spring容器对象ApplicationContext,加载各种配置 3. 在容器创建前,通过监听器机制,应对不同阶段加载数据、更新数据的需求 4. 容器初始化过程中追加各种功能,例如统计时间、输出日志等 监听器类型 1. 在...

    使用Struts+Spring+Hibernate整合开发例子

    注意:在添加hibernate框架时,选择生成spring configuration file (applicationContext.xml)。 这里是使用spring配置文件管理hibernate。 先配置mysql数据驱动,打开eclipse database explorer perspective,选择...

Global site tag (gtag.js) - Google Analytics