Spring 自动装配,Java 配置,XML配置、混合使用

本文详细介绍了Spring的三种配置方式:自动装配,包括组件扫描和自动装配依赖;Java配置,利用@Configuration和@Bean注解创建和组织Bean的关系;XML配置,通过<beans>和<bean>等标签声明Bean。文章还讨论了多种配置的混合使用,以及在Java配置中引用XML配置的方法。
摘要由CSDN通过智能技术生成

一篇 随笔记,无排版。分类于 乱七八糟 名下。来自 《Spring 实战4》的阅读笔记

装配 Bean

装配:创建应用对象之间协作关系的行为。

spring 三种配置方案

  • 自动装配
  • Java 配置
  • XML 配置

三种方式 可以混合使用,推荐程度,由上到下 依次降低。

自动装配

自动装配分为:

  • 组件扫面 : 用于 在ApplicationContext 中创建 Bean。
  • 自动装配:满足各个Bean 之间的依赖关系。

代码演示

@Component // 标志 此类 会被 创建为 Bean
public class A implements B{
   
	private String a;
	public void showA(){
   
		System.out.println("----->"+a);
	}
}

B 是一个 接口,自己 瞎定义的。

  • @Component 注解: 表明该类为组件类 ,该类 会被声明 为 Bean。
    • 为bean 命名:@Component("a"),指定 bean 的ID 为 a。

配置类:启用组件扫描

@Configuration
@ComponentScan // 启用组件扫描,
public class AConfig{
   }
  • @Configuration 注解,用来 表明 此类 为 配置类。
  • @ComponentScan注解,启动扫面,默认扫描 配置类 所在的包及其子包,扫描那些 被 @Component 修饰的类。
    • 指定需要扫描的包:@ComponentScan("包名"),里面 对应 value 属性。
    • 设置 基础 包:@ComponentScan(basePackages="基础包名"),通过 backPackages 属性。
    • 指定 多个基础包:@ComponentScan(basePackages={"基础包名1", "基础包名2"}),都放到 {} 里。
    • 通过类所在的包,来设置需要扫描的包, 通过basePackageClasses 属性
      • @ComponentScan(basePackageClasses="{A.class, B.classs}")

XML 中 使用 ComponentScan 的方式。

<beans>
	<context:component-scan base-package="需要扫描的包"/>
</beans>

测试

@ContextConfiguration(classes="AConfig.class")
public class Tets{
   
	@Autowired
	private B b;
	
	&#
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值