`
feohoo
  • 浏览: 110461 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

如何告诉spring初始化指定配置文件中的javabean

阅读更多

我们一般使用下面两个类初始化spring的bean配置文件,完成javabean的创建和javabean之间关系的管理。
ClassPathXmlApplicationContext和FileSystemXmlApplicationContext.

1、ClassPathXmlApplicationContext
参数为文件的路径,路径相对于classpath

使用方法:
ctx = new ClassPathXmlApplicationContext("applicationContext-hibernate.xml");

2、FileSystemXmlApplicationContext
参数为文件的路径,路径为文件系统的实际路径。

使用方法:
ApplicationContext ctx = new FileSystemXmlApplicationContext("c://applicationContext-hibernate.xml");


问题:
如果我们有这样的需求:配置文件的查找由我们自己的程序完成,然后我们需要spring来初始化我们找到的配置文件,该怎么做呢?
我们可以看看ApplicationContext的类层次关系。


从中我们可以看到ClassPathXmlApplicationContext是通过DefaultResourceLoader类获得配置文件的,缺省的方式是通过classpath,而FileSystemXmlApplicationContext由于覆盖了getResourceByPath方法,使得spring通过getResourceByPath指定的方式查找配置文件。

这时候我们可以获得答案了:
1、如果我们可以确保配置文件在classpath中,那么我们一般采用ClassPathXmlApplicationContext类初始化javabean。
2、如果我们需要自己查找配置文件的话,我们可以采用覆盖getResourceByPath的方法,这样spring就可以根据配置文件初始化javabean了。
当然这第二种方法需要我们的类继承AbstractXmlApplicationContext类。

分享到:
评论

相关推荐

    Spring中文帮助文档

    3.3.4. 延迟初始化bean 3.3.5. 自动装配(autowire)协作者 3.3.6. 依赖检查 3.3.7. 方法注入 3.4. Bean的作用域 3.4.1. Singleton作用域 3.4.2. Prototype作用域 3.4.3. Singleton beans和prototype-bean的...

    Spring-Reference_zh_CN(Spring中文参考手册)

    初始化web配置 3.4.3.2. Request作用域 3.4.3.3. Session作用域 3.4.3.4. global session作用域 3.4.3.5. 作用域bean与依赖 3.4.4. 自定义作用域 3.5. 定制bean特性 3.5.1. Lifecycle接口 3.5.1.1. 初始化回调 3.5....

    Spring 中文API&开发文档.rar

    你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 ◆面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务...

    spring3.0jar包

    你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 ◆面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    8.4.3 改变初始化和销毁方式 8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1.2 为什么要使用CVS 9.2 建立CVS的开发环境 9.2.1 下载CVS 9.2.2 配置CVS 9.3 CVS的使用方法 ...

    spring-framework-3.1.0.RELEASE.zip

    你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务...

    Spring API

    3.3.4. 延迟初始化bean 3.3.5. 自动装配(autowire)协作者 3.3.6. 依赖检查 3.3.7. 方法注入 3.4. Bean的作用域 3.4.1. Singleton作用域 3.4.2. Prototype作用域 3.4.3. Singleton beans和prototype-bean的...

    Spring 2.0 开发参考手册

    3.3.5. 延迟初始化bean 3.3.6. 自动装配(autowire)协作者 3.3.7. 依赖检查 3.3.8. 方法注入 3.4. bean的作用域 3.4.1. Singleton作用域 3.4.2. Prototype作用域 3.4.3. 其他作用域 3.4.4. 自定义作用域 ...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    8.4.3 改变初始化和销毁方式 8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1.2 为什么要使用CVS 9.2 建立CVS的开发环境 9.2.1 下载CVS 9.2.2 配置CVS 9.3 CVS的使用方法 ...

    Spring面试题

    有了 Spring,只要用 JavaBean 属性和配置文件加入依赖性(协作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。} Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心...

    spring chm文档

    3.3.5. 延迟初始化bean 3.3.6. 自动装配(autowire)协作者 3.3.7. 依赖检查 3.3.8. 方法注入 3.4. bean的作用域 3.4.1. Singleton作用域 3.4.2. Prototype作用域 3.4.3. 其他作用域 3.4.4. 自定义作用域 ...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    8.4.3 改变初始化和销毁方式 8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1.2 为什么要使用CVS 9.2 建立CVS的开发环境 9.2.1 下载CVS 9.2.2 配置CVS 9.3 CVS的使用方法 ...

    Spring IOC Bean标签属性介绍(教学视频+源代码)

    Spring IOC Bean标签属性介绍 0.Bean标签属性介绍 1.0 新建一个Maven工程 1.1 pom.xml 1.2 实体类JavaBean 1.2.1 User类 ...1.9.1 实体类JavaBean User加自定义的初始化方法和销毁方法 1.9.3 加了lazy

    Java整理的基础工具类项目

    配置文件初始化启动读取 Cookie工具类 JavaBean工具类 IP工具类 Json对象转换工具类 MD5工具类 Number工具类 Spring工具类 电话操作类 地理坐标处理WGS-84坐标转换成百度坐标工具类 DES加密工具类 参数验证注解 Xss...

    基于maven项目的SSM框架与layu前端框架的代码

    在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类(假设这个类名是A),分配的方法就是调用A的setter...

    《程序天下:J2EE整合详解与典型案例》光盘源码

    8.4.3 改变初始化和销毁方式 8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1.2 为什么要使用CVS 9.2 建立CVS的开发环境 9.2.1 下载CVS 9.2.2 配置CVS 9.3 CVS的使用方法 ...

    网上购物系统(JavaBean+Servlet+jsp)130223.rar.tar.gz

    该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。 Servlet全称“Java ...

Global site tag (gtag.js) - Google Analytics