spring的bean管理

本文深入探讨Spring框架的关键特性,包括BeanPostProcessor方法增强、属性注入方式(构造函数、setter方法、接口及SpEL注入)、注解配置、组件扫描及作用域等,为开发者提供全面的Spring应用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、使用BeanPostProcessor对Bean中的方法进行增强。

则可以在save方法执行之前进行一些处理。

2、spring的属性注入

对于类成员变量,注入方式有三种

– 构造函数注入
– 属性setter方法注入
– 接口注入

• Spring支持前两种

  • 通过构造方法注入Bean 的属性值或依赖的对象,它保证了 Bean 实例在实 例化后就可以使用。

  • 构造器注入在 <constructor-arg> 元素里声明的属性

  • 使用set方法注入,在Spring配置文件中,通过<property>设置注入的 属性

  • 下图:使用set方法注入(value注入普通的属性,ref注入对象类型的属性)

Spring的属性注入-p名称空间

• 使用p命名空间
• 为了简化XML文件配置,Spring从2.5开始引入一个新的p名称空间

  • p:<属性名>="xxx" 引入常量值

  • p:<属性名>-ref="xxx" 引用其它Bean对象

Spring的属性注入-SpEL注入(当属性的注入过于复杂时可考虑使用SpEL注入)

调用另一个bean中的方法获取值。

 

复杂数据类型的注入值                                                           

3、注解方式,开启组件扫描

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- bean definitions here -->

    <!--开启组件扫描-->
    <context:component-scan base-package="com.imooc.ioc" />

</beans>

普通类型使用@Value,对象类型的注入使用@Autowired 按照类型自动注入

通过@Autowired的required属性,找到匹配的bean,使用@Quelifier指定名称

使用@Resource,相当于使用了@Autowired和@Qualifier

4、Spring的其他注解

5、作用域

6、传统XML方式和注解方式配合使用

传统xml方式:

改进:xml来管理类,属性呢,通过注解的方式进行管理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值