`

Spring1 Bean实例化

 
阅读更多
1. Bean实例化的方法
a. 普通方法
public class PersonServiceBean implements PersonService {
	public void save(){
		System.out.println("我是save()方法");
	}
}

<bean id="personService" class="cn.itcast.service.impl.PersonServiceBean"></bean>

	@Test 
	public void instanceSpring(){
		ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
		PersonService personService = (PersonService)ctx.getBean("personService");
		personService.save();
	}


b. 静态工厂方法
public class PersonServiceBeanFactory {
	public static PersonServiceBean createPersonServiceBean(){
		return new PersonServiceBean();
	}
}

<bean id="personService2" class="cn.itcast.service.impl.PersonServiceBeanFactory" 
          factory-method="createPersonServiceBean"/>

	@Test 
	public void instanceSpring(){
		ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
		PersonService personService = (PersonService)ctx.getBean("personService2");
		personService.save();
	}


c. 工厂方法
public class PersonServiceBeanFactory {	
	public PersonServiceBean createPersonServiceBean2(){
		return new PersonServiceBean();
	}
}

<bean id="personServiceFactory" class="cn.itcast.service.impl.PersonServiceBeanFactory"/>
          <bean id="personService3" factory-bean="personServiceFactory" factory-method="createPersonServiceBean2"/>

	@Test 
	public void instanceSpring(){
		ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
		PersonService personService = (PersonService)ctx.getBean("personService3");
		personService.save();
	}

分享到:
评论

相关推荐

    Spring实例化Bean顺序

    4. **启动后处理器(BeanPostProcessor)**:这些是特殊类型的Bean,它们在所有常规Bean实例化之后,但初始化之前进行处理。它们的实例化顺序由`@Order`注解决定,或者通过实现`Ordered`接口来控制。 5. **...

    Spring项目bean实例化代码

    本篇文章将深入探讨Spring项目中Bean的实例化过程,包括三种主要的bean实例化方式:构造方法、静态工厂和实例工厂。 首先,让我们了解什么是Bean。在Spring中,Bean是应用程序中的业务对象,它们由Spring容器负责...

    详解Spring中bean实例化的三种方式

    本文将详细探讨Spring中bean实例化的三种主要方式:普通构造方法创建、静态工厂创建和实例工厂创建。 1. 普通构造方法创建: 这是最常见、最直观的方式,适用于大部分情况。在Spring配置文件中,我们通过`&lt;bean&gt;`...

    Spring Bean创建初始化流程.docx

    进入`doGetBean()`方法,这是Bean实例化的关键步骤。`doGetBean()`会处理Bean的依赖注入、类型检查等操作。 7. **创建Bean**: `createBean(beanName, mbd, args)`在`AbstractAutowireCapableBeanFactory`中实现...

    Spring Bean重复执行两次(实例被构造两次)问题分析

    同时,对源码进行调试也是一个有效的排查手段,可以追踪到Bean实例化的具体位置,找出问题的根源。 综上所述,Spring Bean重复执行两次的问题通常是由于配置错误、依赖注入循环、初始化回调的不当使用、静态工厂...

    Spring 实例化Bean的三种方式

    ### Spring 实例化Bean的三种方式详解 在Java企业级应用开发中,Spring框架因其强大的功能和灵活性,成为了处理依赖注入、事务管理等任务的首选工具。其中,Bean的实例化是Spring框架的核心功能之一,它支持多种...

    Spring Bean实例化实现过程解析

    在这个过程中,Spring 容器会自动调用 Bean1 的无参构造方法来实例化 Bean1,这样我们就可以获取到 Bean1 实例。 2. 静态工厂方法实例化 静态工厂方法实例化是指通过静态工厂方法来实例化 Bean。这意味着,我们...

    Spring的三种实例化Bean的方式

    本文将详细介绍Spring中的三种主要的Bean实例化方式:XML配置、注解配置以及Java配置。 ### 1. XML配置 XML配置是Spring早期版本中最常见的Bean定义方式。在`spring_first`目录下的配置文件(如`beans.xml`)中,...

    实例化Spring bean的两种工厂方法

    在Spring框架中,bean的实例化是其核心功能之一,它允许我们管理应用程序中的对象生命周期。本篇将详细探讨两种工厂方法——实例工厂方法和静态...在实际项目中,应根据实际情况权衡利弊,选择最适合的Bean实例化策略。

    Spring bean对象实例化实现过程图解

    在 Bean 对象实例化过程中,BeanDefinitionRegistryPostProcessor 接口扮演着重要的角色,该接口的调用分为三步:1、调用实现了 PriorityOrdered 排序接口;2、调用实现了 Ordered 排序接口;3、没有实现接口的调用...

    spring装配bean实例代码

    在Spring框架中,Bean装配是核心功能之一,它负责初始化、配置和管理应用程序中的对象。本文将深入探讨Spring装配Bean的实例代码,帮助你更好地理解这一关键概念。 首先,Spring装配Bean主要有两种方式:XML配置和...

    Spring框架系列(8) - Spring IOC实现原理详解之Bean实例化(生命周期,循环依赖等).doc

    Spring 框架系列(8)- Spring IOC 实现原理详解之 Bean 实例化(生命周期、循环依赖等) 本文主要研究 Spring 框架中 Bean 的实例化过程,包括 Bean 的生命周期和循环依赖问题的解决方案。在 Spring 框架中,Bean ...

    Spring Bean的初始化和销毁实例详解

    在上面的代码中,我们使用@Configuration注解来配置Bean的初始化和销毁,并使用@Bean注解来创建Bean实例。 四、总结 在本文中,我们详细讲解了Spring Bean的初始化和销毁,包括使用@Bean的initMethod和...

    spring bean的生命周期

    - **XML配置**:在传统的Spring应用中,Bean的定义通常写在XML配置文件中,如`springbean-xml`中的配置。 - **注解配置**:使用`@Component`,`@Service`,`@Repository`和`@Controller`注解标记类,配合`@...

    spring管理bean应用实例代码

    - **初始化**:Spring容器在创建Bean实例后,可以调用`@PostConstruct`注解的方法进行初始化。 - **依赖注入**:Spring可以通过构造器、setter方法、字段或工厂方法来注入依赖。 - **销毁**:当Bean不再需要时,...

    详解Spring中Bean的生命周期和作用域及实现方式

    1. 实例化前:在这个阶段,Bean的属性已经设置完毕,但是还没有实例化。 2. 实例化:在这个阶段,Bean已经实例化,但是还没有进行任何其他操作。 3. 设置BeanName:在这个阶段,Bean已经实例化,并且已经设置了名称...

    spring bean XML配置入门

    一旦XML配置加载到Spring容器中,容器将根据配置创建Bean实例,并按照定义进行初始化、依赖注入,最后完成Bean的生命周期管理。 10. **实践操作**: 在实际开发中,我们可以使用Eclipse的Spring插件来简化Bean...

    这一次搞懂Spring的Bean实例化原理操作

    1. **Bean实例化**:根据BeanDefinition,Spring会通过反射创建Bean实例。 2. **依赖注入**:在Bean实例化完成后,Spring会根据其定义的依赖关系进行属性注入,这可能包括字段、构造函数、setter方法等多种方式。 3....

    Spring Bean简单应用实例

    这样,我们的代码不再负责查找和实例化依赖的对象,而是由Spring容器根据配置来创建和管理这些对象。IoC使得我们的代码更加灵活,易于测试和维护。 依赖注入(DI)是IoC的一种实现方式。在Spring中,DI允许我们声明...

Global site tag (gtag.js) - Google Analytics