在加载spring的bean的xml文件,生成spring容器。得到bean对象的几中用法。
在srping中可以配置一个xml文件,但是为了解耦也可以配置多个xml文件。
通过spring容器直接生成bena对象。
1、 用ApplicationConetx上下文对象来加载application.xml文件。
解析一个xml文件:
比如说:
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");
加载的是一个xml文件,通过它就可以获得bean对象了:
ContainerBean bean=(ContainerBean)ctx.getBean("/cb");获得的是ContainerBean对象。
解析多个xml文件:
比如说:ApplicationContext ctx=new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","applicationContext2.Rel"});
这里是建立了一个String数组
ClassPathXmlApplication对象指的是在该项目下的classes下去找xml的文件。生成对象。
2、 用Resource加载application.xml文件,用beanFactory获得bean对象
这个Resource文件只能加载一个xml文件。如果该xml文件还引用了其他的xml文件
Resource resource=new ClassPathResource("applicationContext.xml");
BeanFactory ctx=new XmlBeanFactory(resource);
ContainerBean bean=(ContainerBean)ctx.getBean("/cb");
用bean工厂获得bean对象
可以加载该xml文件的系统真实路径获得resource对象
Resource resource=new FileSystemResource("E:/未来蓝图4_14连读班/Spring1.2FirstApp/classes/applicationContext.xml");
BeanFactory ctx=new XmlBeanFactory(resource);
ContainerBean bean=(ContainerBean)ctx.getBean("/cb");
也可以用BeanFactory的子类XmlFactory获得。用XmlFactory获得的好处是当你要执行类销毁方法的时候。可以执行ctx.destroySingletons(),但是前提是该类必须是单态的;。
分享到:
相关推荐
总结起来,"spring自动生成bean项目"是一个实用的工具,能够帮助开发者快速地根据数据库表结构生成Spring Bean代码,节省时间,提升开发效率,同时提供邮件支持以解决可能遇到的问题。了解并掌握这种自动化生成技术...
在IT行业中,自动化是提升效率的关键之一,而xDoclet正是这样一个工具,它能帮助我们自动地生成Spring框架中的bean配置文件。这篇文章将深入探讨如何使用xDoclet以及它在Spring环境中的应用。 首先,xDoclet是一款...
- **注意事项:**使用工厂方法时,Spring容器无法自动检测Bean的类型,因此在进行类型匹配或依赖注入时,需要明确指定Bean的类型。另外,如果工厂方法抛出异常,Spring容器会捕获并处理,导致Bean无法正常创建。 4...
在Spring框架中,Bean是应用程序的核心组成部分,它们由Spring容器管理并负责实例化、装配以及初始化。本节主要探讨了Spring中Bean的四种创建方式及其优缺点。 首先,Spring中的Bean默认是单例模式,这意味着在整个...
1.lib必须按照项目中的classpath中的顺序 不然 系统找不到类 2.框架能够自动生成类和dao层 3.框架集成了Spring 能够自动将bean、dao、service装载到SPring容器中,供调用
当Spring容器遇到一个被标记为FactoryBean的Bean定义时,它不会直接实例化这个Bean,而是调用`getObject()`方法来获取实际需要的对象。 在实际应用中,工厂Bean有多种用途。例如: 1. **复杂初始化逻辑**:如果一...
紧接着,我们使用`registerBeanDefinition`方法将`userService` Bean注册到Spring容器中。在这里,我们使用了`DefaultListableBeanFactory`来获取BeanFactory,然后将`userService` Bean注册到容器中。 在上面的...
Bean是由Spring容器创建、初始化、装配以及管理的对象,开发者可以通过多种方式在代码中获取这些Bean。以下将详细介绍Spring在代码中获取bean的几种主要方法: 1. **`ApplicationContext` 接口** `...
有三种方式可以将Java对象手动放入Spring容器中: 1. 使用`beanFactory.registerSingleton()` 直接注册单例Bean。 2. 在配置类上使用`@Bean` 注解,声明一个产生Bean的方法。 3. 实现`FactoryBean` 接口,自定义生成...
在Java开发中,代理模式...当Spring容器创建一个Bean时,如果该Bean被标记为可代理的,Spring会使用JDK或CGLIB创建一个代理Bean,然后将这个代理Bean传递给BeanPostProcessor的`postProcessBeforeInitialization()`和`...
`@Configuration`注解标记一个类为配置类,这个类将被Spring容器用来生成bean定义。配置类中的方法通常带有`@Bean`注解,这些方法将返回一个对象,该对象会被Spring容器识别为一个Bean。例如: ```java @...
Spring Bean 是 Spring 框架的核心概念,它代表了应用程序中的一个对象,这个对象可以被 Spring 容器管理,包括创建、初始化、装配、销毁等生命周期过程。在 Spring 中,Bean 定义是由 `BeanDefinition` 接口来表示...
Spring学习之路(黑马课程...Spring学习之路是指通过学习Spring框架来掌握IOC反转控制的关键技术,并且学习Bean的创建和管理、Bean的作用域、Bean的实例化方式、Bean的延迟加载、Bean的初始化函数和销毁函数等知识点。
【课程介绍】:Spring启动时读取应用提供的Bean配置信息,在Spring容器中生成对应的Bean配置注册表,然后根据这个注册表实例化Bean,组装了Beans之间的依赖关系,为上层应用提供了一个现成的运行环境。【课程目录】...
在Spring的IoC(Inversion of Control)容器中,XML配置文件是定义bean及其依赖关系的传统方式。在题目提供的ApplicationContext.xml文件中,你可以定义一个或多个bean,然后在Controller中通过@Autowired注解来注入...
Spring容器是生成Bean实例的工厂,并管理Spring中的Bean。Bean是Spring中的基本单位,在基于Spring的Java EE工程中,所有的组件都被当成Bean处理。 ApplicationContext事件机制是基于观察者设计模式实现的。通过...
这个机制在实际开发中有着广泛的应用,比如在微服务框架如Dubbo中,通过自定义注解可以方便地将服务提供者和服务消费者自动注册到Spring容器,简化配置,提高代码可读性和可维护性。通过理解和掌握这一机制,开发者...
而在整合Spring后,我们可以使用Spring提供的`HttpServletBean`或者`FrameworkServlet`(例如`DispatcherServlet`)作为Servlet的基础类,这样Servlet实例就会自动由Spring容器管理。`DispatcherServlet`是Spring ...
Spring的高层容器视图展示了容器启动时如何读取应用提供的配置信息,生成bean配置注册表,然后实例化bean,并装配依赖关系,为应用提供运行环境。在Spring中,BeanFactory是基础框架接口,而ApplicationContext是...
当我们启动Spring容器(如ClassPathXmlApplicationContext),容器会解析这个XML文件,生成相应的BeanDefinition对象,这些对象包含了bean的所有元数据。 首先,Spring解析XML配置文件的过程是由`...