spring可以通过编写XML来配置Bean,也可以通过使用spring的注解来装配Bean。

1、自动装配与自动检测:

自动装配:让spring自动识别如何装配bean的依赖关系,减少对<property>元素的使用。
自动检测:让spring自动识别哪些类需要配置成spring Bean,减少对<bean>元素的使用。

2、自动装配的4种类型:

byName:把与bean名字(ID)相同的其他Bean自动装配到Bean的对应属性中。
byType:把与bean 类型相同的其他Bean自动装配到Bean的对应属性中。
constructor:把与Bean的构造器入参具有相同类型的其他Bean装配到对应属性中。
autodetect:首先尝试constructor进行自动装配,然后再尝试byType.

假设spring配有一个Bean:
<bean id="userService" class="com.test.UserServiceImpl">
</bean>
对应于类 com.test.UserService:

public class UserServiceImpl{

private UserDao userDao; //属性
...
}
若配置的为byName,则spring会将Bean的id 为userDao 的Bean自动装配到userService bean的userDao的属性中。
若配置的为byType,则spring会将Bean的class类型为UserDao的Bean自动装配到userService bean的userDao的属性中。
若配置的为constructor,则类com.test.UserService中要有构造函数,如:
public class UserServiceImpl{

private UserDao userDao; //属性
//构造函数
pulic UserServiceImpl(UserDao userDao){
    this.userDao = userDao;
}
}
那么spring会将类型为UserDao的bean装配到属性userDao中。

写个基于注解自动装配,maven工程如下:

aaarticlea/png;base64,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" alt="" />

UserServiceImpl类:

import org.springframework.beans.factory.annotation.Autowired;

import com.test.dao.UserDao;

import com.test.domain.User;

public class UserServiceImpl implements UserService {

    @Autowired  //自动装配Bean,使用注解

    private UserDao userDao;

    

    public void save(User user) {

        userDao.Save(user);

        System.out.println("saved!");

    }

    public void setUserDao(UserDao userDao) {

        this.userDao = userDao;

    }

}

自动装配Bean是通过设置自动装配的类型来为Bean的属性装配依赖。所以在beans.xml中只指定Bean而不需要显式指定属性<property>.

beans.xml中:

<?xml version="1.0" encoding="UTF-8"?>

<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-3.0.xsd

        http://www.springframework.org/schema/context

        http://www.springframework.org/schema/context/spring-context-3.0.xsd"

        default-autowire="byName">

    

    <context:annotation-config />  <!--由于使用了注解,因此需要配置 -->

    <bean id="userDao" class="com.test.dao.UserDaoImpl"></bean>

    <bean id="userService" class="com.test.service.UserServiceImpl"></bean>

<!--     <context:component-scan base-package="com.test"></context:component-scan> -->

</beans>

3、自动检测Bean

首先修改beans.xml,使用<context:component-scan>替代<bean>

<context:annotation-config />

<!--     <bean id="userDao" class="com.test.dao.UserDaoImpl"></bean> -->

<!--     <bean id="userService" class="com.test.service.UserServiceImpl"></bean> -->

    <context:component-scan base-package="com.test"></context:component-scan>

修改UserDaoImpl,同样修改UserServiceImpl.

@Component   //spring会自动检测

//@Qualifier("userDao")

public class UserDaoImpl implements UserDao {

    public void Save(User user) {

        System.out.println("userName:"+user.getUserName());

        System.out.println("password:"+user.getPassword());

    }

}

4、限定依赖

当有足够多的Bean满足装配条件,@Autowired注解没办法选择哪一个Bean才是它真正需要的,因此可以配合使用@Qualifier注解

如,除了UserDaoImpl实现接口UserDao,现在还有UserDaoImpl2实现,为UserDaoImpl2使用@Qualifier注解限定。

import com.test.domain.User;

@Qualifier("userDaoOther") //限定

public class UserDaoImpl1 implements UserDao{

    public void Save(User user) {

        System.out.println("userName1:"+user.getUserName());

        System.out.println("password1"+user.getPassword());

    }

}

在UserServiceImpl中,若需要装配UserDaoImpl2,除了使用@Autowired自动装配,还需要使用@Qualifier("userDaoOther")限定依赖

@Component("userService")

public class UserServiceImpl implements UserService {

    @Autowired

    @Qualifier("userDaoOther")  //限定依赖,最后依赖的Bean为UserDaoImpl2.

    private UserDao userDao;

    

    public void save(User user) {

        userDao.Save(user);

        System.out.println("saved!");

    }

    public void setUserDao(UserDao userDao) {

        this.userDao = userDao;

    }

}

spring的自动装配Bean与自动检测Bean的更多相关文章

  1. Spring学习笔记之 Spring IOC容器(一)之 实例化容器,创建JavaBean对象,控制Bean实例化,setter方式注入,依赖属性的注入,自动装配功能实现自动属性注入

    本节主要内容:       1.实例化Spring容器示例    2.利用Spring容器创建JavaBean对象    3.如何控制Bean实例化    4.利用Spring实现bean属性sett ...

  2. 25、自动装配-@Profile根据环境注册bean

    25.自动装配-@Profile根据环境注册bean 指定组件在哪个环境的情况下才能被注册到容器中 加了环境标识的,只有这个环境被激活才能注册到组件中 默认是default环境 写在类上,整个配置类的 ...

  3. SpringBoot自动装配原理之Configuration以及@Bean注解的使用

    Configuration以及Bean注解的使用 该知识点在Spring中应该学过,没有学过或者遗忘的的朋友需要预习或温习前置知识点.SpringBoot其实就是Spring的进一步简化,所以前置知识 ...

  4. Spring学习笔记--自动装配Bean属性

    Spring提供了四种类型的自动装配策略: byName – 把与Bean的属性具有相同名字(或者ID)的其他Bean自动装配到Bean的对应属性中. byType – 把与Bean的属性具有相同类型 ...

  5. spring实战二之Bean的自动装配(非注解方式)

    Bean的自动装配 自动装配(autowiring)有助于减少甚至消除配置<property>元素和<constructor-arg>元素,让Spring自动识别如何装配Bea ...

  6. Spring(九):Spring配置Bean(二)自动装配的模式、Bean之间的关系

    XML配置里的Bean自动装配 Spring IOC容器可以自动装配Bean,需要做的仅仅是在<bean>的autowire属性里指定自动装配的模式,模式包含:byType,byName, ...

  7. spring bean autowire自动装配

    转自:http://blog.csdn.net/xiao_jun_0820/article/details/7233139 autowire="byName"会自动装配属性与Bea ...

  8. 3.spring:自动装配/Bean之间的关系/作用域/外部文件/spel/

    1.自动装配/手动装配 xml配置文件里的bean自动装配 Spring IOC 容器里可以自动的装配Bean,需要做的仅仅是在<bean>的autowire属性里面指定自动装配模式 -& ...

  9. Spring学习--xml 中 Bean 的自动装配

    Spring IOC 容器可以自动装配 Bean. 只要在 <bean> 的 autowire 属性里指定自动装配的模式. byName(根据名称自动装配):必须将目标 Bean 的名称和 ...

随机推荐

  1. python3爬取豆瓣top250电影

    需求:爬取豆瓣电影top250的排名.电影名称.评分.评论人数和一句话影评 环境:python3.6.5 准备工作: 豆瓣电影top250(第1页)网址:https://movie.douban.co ...

  2. 在linux下安装并运行scrapyd

    系统:centos7.4 安装scrapyd:pip isntall scrapyd 因为我腾讯云上是python2与python3并存的 所以我执行的命令是:pip3 isntall scrapyd ...

  3. graph-bfs-八数码问题

    这个看起来是童年回忆:) 大体思路是,将每个排列状态看成图中的一个点,状态之间转换说明有边.然后用bfs,如果遍历完之后还是没有找到目标状态, 则说明是无解的,否则输出步数.具体想法写在代码里吧,多多 ...

  4. JAVA基础篇—文件与流

    处理字节流的抽象类 InputStream 是字节输入流的所有类的超类,一般我们使用它的子类,如FileInputStream等. OutputStream是字节输出流的所有类的超类,一般我们使用它的 ...

  5. LeetCode(123) Best Time to Buy and Sell Stock III

    题目 Say you have an array for which the ith element is the price of a given stock on day i. Design an ...

  6. TypeError: cannot use a string pattern on a bytes-like object

    一劳永逸解决:TypeError: cannot use a string pattern on a bytes-like object TypeError: cannot use a string ...

  7. Linux学习-分析登录档

    CentOS 预设提供的 logwatch 不过,要了解系统的状态,还是得要分析整个登录档才行~ 事实上, 目前已经有相当多的登录档分析工具,例如 CentOS 7.x 上面预设的 logwatch ...

  8. Selenium WebDriver-判断页面中某一元素是否已经显示,通常用于断言

    判断界面中某一元素是否已经呈现,多用于断言,代码如下: #encoding=utf-8 import unittest import time from selenium import webdriv ...

  9. mongodb系统出错。 发生系统错误 1067。 进程意外终止。

    MongoDB安装目录\data\将此文件夹下的mongod.lock删除 mongod.exe --config E:\ruanjian\MongoDB\mongod.cfg --remove mo ...

  10. ibatis 动态SQL

    直接使用JDBC一个非常普遍的问题就是动态SQL.使用参数值.参数本身和数据列都是动态SQL,通常是非常困难的.典型的解决办法就是用上一堆的IF-ELSE条件语句和一连串的字符串连接.对于这个问题,I ...