`

Spring Bean属性

 
阅读更多
实例化方式
•用构造器来实例化
<bean id="XXXbean"  class=""/>
•使用 静态工厂方法实例化
<bean id="XXXbean"  class="XXXfactoryClass" factory-method=""/>
•使用实例工厂方法实例化
<bean id="XXXfacotry"  class=""/>
<bean id="XXXbean"  factory-bean="XXXfacotry"  factory-method=“” />

通过bean的缺省构造函数创建,当各个bean的业务逻辑相互比较独立的时候或者和外界关联较少的时候可以使用。

利用静态factory方法创建,可以统一管理各个bean的创建,如各个bean在创建之前需要相同的初始化处理,则可用这个factory方法险进行统一的处理等等。

利用实例化factory方法创建,即将factory方法也作为了业务bean来控制,觉得1可用于集成其他框架的bean创建管理方法,2能够使bean和factory的角色互换。


延迟初始化
初始化方法
摧毁方法

<bean id="personService1" class="cn.itcast.service.impl.PersonServiceBean" lazy-init="false" init-method="init" destroy-method="destroy"></bean>




1.lazy-init
<beans> 
<bean id="service1" type="bean路径" lazy-init="true"/> 

<bean id="service2" type="bean路径" lazy-init="false"> 
<property name="service1" ref="service1"/> 
</bean> 
</beans> 


以上两个bean,一个lazy-init属性为true,一个为false,由什么区别呢
当IoC容器启动时,service2会实例化,而service1则不会;但是但容器实例化service2时,service1也被实例化了,为什么呢,因为service2需要它。也就是说lazy-init="true"的bean,IoC容器启动时不会实例化该bean,只有当容器需要用到时才实例化它。lazy-init有利于容器效率,对于不需要的bean可以先不管。

2.abstract
<bean id="baseTxService" 
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
abstract="true"> 
…… 
</bean> 

bean abstract="true"时,该bean不会被实例化,上面的bean是个模板

分享到:
评论

相关推荐

    spring bean 属性总结

    ### Spring Bean 属性详解 Spring框架是Java平台上的一个开源框架,主要用来简化企业级应用程序的开发。在Spring中,核心概念之一就是Bean,它是一个简单的Java对象,由Spring IoC容器管理。Spring通过XML配置文件...

    spring bean的生命周期

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

    spring bean XML配置入门

    在本文中,我们将深入探讨Spring框架中的Bean XML配置,这是Spring的核心特性之一,它允许我们定义、管理和装配应用中的对象。我们将围绕以下知识点展开: 1. **Spring框架基础**: Spring是一个开源的Java平台,...

    Spring Bean创建初始化流程.docx

    在`doCreateBean()`方法中,Spring会创建Bean的实例,`createBeanInstance(beanName, mbd, args)`执行Bean实例的创建,而`populateBean(beanName, mbd, instanceWrapper)`则负责填充Bean的属性,将依赖注入到Bean中...

    day38 12-Spring的Bean的属性的注入:名称空间p

    本文将深入探讨Spring中的"名称空间p",这是一种用于配置Bean属性注入的方式,特别是在XML配置文件中。我们将通过源码分析和实际例子来理解其工作原理。 ### Spring Bean属性注入 Bean属性注入主要有两种方式:`...

    普元eos-springbean开发

    ### 普元EOS-SpringBean开发概述 普元EOS平台是一款面向企业级应用的低代码开发平台,它集成了大量的开发工具和技术框架,帮助企业快速构建高质量的应用系统。本文将围绕“普元EOS-SpringBean开发”这一主题展开...

    spring bean life cycle

    3. **初始化**:在属性注入完成后,Spring会执行Bean实现的初始化回调方法,这些方法可以通过实现`InitializingBean`接口的`afterPropertiesSet()`方法或者使用`init-method`属性来指定。此外,还可以通过配置`@...

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

    在Spring配置文件中,我们需要定义一个工厂bean,然后指定该工厂bean的`factory-bean`属性,以及工厂bean中用于创建目标bean的方法,即`factory-method`属性。下面是一个简单的例子: ```xml &lt;bean id="myFactory...

    Spring Bean 加载顺序 .

    如果Bean定义了初始化回调方法,如`init-method`属性指定的方法,Spring会在初始化后执行这个方法。 9. **Bean的销毁**: 对于Singleton Bean,Spring在容器关闭时会调用`@PreDestroy`注解的方法和实现...

    详解Spring 中如何控制2个bean中的初始化顺序

    需要注意的是,bean 属性的注入是在初始化方法调用之前。因此,在使用 DependsOn 注解时,需要了解 Spring 中 bean 的加载过程,以免出现错误。 其他实现方式 除了上述两种方式外,还有其他方式可以控制 2 个 bean...

    Spring bean 管理

    在Spring中,Bean的管理包含多个方面:创建Bean实例、配置Bean属性、控制Bean的生命周期以及Bean作用域的定义。接下来将详细解释这些知识点。 1. Spring的工厂类: Spring通过工厂模式设计了一系列工厂类来创建对象...

    spring bean的生命周期测试代码

    2. **属性注入**:Spring会根据Bean定义中的依赖注入(DI)信息,将其他Bean的引用或值设置到当前Bean的属性上。这可以通过setter方法、构造器注入、字段注入等方式完成。 3. **初始化**:在所有属性注入完成后,...

    spring运行过程中动态注册bean

    在Spring框架中,动态注册Bean是一项非常实用的功能,它允许我们在应用运行时向Spring容器添加新的Bean定义。这种能力在很多场景下都是极其有用的,比如根据不同的环境配置加载不同的服务实现,或者在运行时根据某些...

    Spring Bean简单应用实例

    在Spring框架中,Bean是核心概念,它代表了应用程序中的对象。Spring通过IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)来管理这些Bean。在这个"Spring Bean简单应用实例"中,我们将...

    Spring的Bean配置

    1. **XML配置**:传统的Spring配置通常使用XML文件,如`beans.xml`,其中包含了Bean的定义,包括类名、初始化方法、属性等。例如: ```xml &lt;bean id="exampleBean" class="com.example.ExampleClass"&gt; ...

    Spring bean初始化及销毁你必须要掌握的回调方法.docx

    在Spring框架中,管理Bean的生命周期是至关重要的。Bean的生命周期包括初始化、正常运行以及销毁三个阶段。在这些阶段,Spring允许开发者定义自定义的行为,以便在特定时刻执行必要的操作。下面将详细介绍如何通过...

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

    Spring Bean的初始化和销毁实例详解 Spring Bean的初始化和销毁是Spring框架中一个非常重要的概念,它们都是Bean生命周期中不可或缺的一部分。在Spring框架中,我们可以使用多种方式来控制Bean的初始化和销毁,以下...

    Spring Bean生命周期.pdf

    属性赋值阶段,Spring容器会将Bean定义中配置的属性值设置到Bean实例上。在这个过程中,容器会考虑属性值的依赖关系,并按需注入其他Bean或设置具体的值。 3. 初始化(Initialization) 初始化阶段是指Bean已经实例...

    Java Bean 遍历和使用注解给Bean的属性添加属性值

    - **Spring Framework**:Spring提供了`org.springframework.beans.BeanWrapper`和`org.springframework.beans.PropertyAccessor`接口,简化了对Bean的操作,包括注解的处理。 在实际开发中,遍历Java Bean和利用...

    Spring实例化Bean顺序

    5. **InitializingBean接口**:如果Bean实现了`InitializingBean`接口,Spring会在所有必需的属性设置后调用`afterPropertiesSet()`方法。这个接口的方法调用时机晚于`@PostConstruct`注解的方法,因此实例化顺序会...

Global site tag (gtag.js) - Google Analytics