①声明bean的注解
        @Component   将当前类声明为IOC容器中的一个普通的组件(除了下面三种外的组件)
        @Controller   将当前类声明为IOC容器中的一个控制器组件
        @Service    将当前类声明为IOC容器中的业务逻辑层组件
        @Repository    将当前类声明为IOC容器中的一个持久化层组件
    
    Spring根据上述注解其实并不能分辨当前类是否真的是一个控制器或Dao,即使标记的类和注解不对应也没有语法错误。
    但在实际工作中,肯定要将专门的注解标记在对应的类上面。

②使用基于注解的bean的配置,需要额外导入一个jar包:spring-aop-4.0.0.RELEASE.jar   (spring中所有注解都是基于aop的,使用时要导入spring-aop-4.0.0.RELEASE.jar包)

③需要设置自动扫描的包
        < context:component-scan base-package ="com.neuedu.ioc.bean"/>

④使用注解后,默认按照类名首字母小写作为id的值,也可以使用value属性指定id,value属性名也可以省略注解        
        注解                                                      id值   
   @Component                                           commonComponent
   public class CommonComponent {
   }
   
   @Controller(value="neueduBookAction" )            neueduBookAction
   public class BookAction {
   }
        
   @Service("happyService" )                            happyService
   public class BookService {
   }

⑤使用注解进行自动装配:@Autowired注解[好处就是:连get、set方法都不用写!]

    @Autowiredprivate UserDao dao;
//@Autowired直接将IOC容器中的UserDao对象注入

[1]首先检测标记了@Autowired注解的属性的类型(开始根据类型注入,能确定唯一bean对象,则注入)
    [2]根据类型进行装配
    [3]如果指定类型的bean不止一个,那么根据需要被装配的属性的属性名做id的值,查找bean

  (此时根据属性名注入,看是否有匹配id)
    [4]如果根据id值还是没有找到bean,可以使用@Qualifier注解手动指定要装配的bean的id.

转载于:https://www.cnblogs.com/kangxingyue-210/p/7445726.html

spring相关—IOC容器—使用注解配置bean相关推荐

  1. Spring(二)--FactoryBean、bean的后置处理器、数据库连接池、引用外部文件、使用注解配置bean等...

    实验1:配置通过静态工厂方法创建的bean  [通过静态方法提供实例对象,工厂类本身不需要实例化!] 1.创建静态工厂类 public class StaticFactory {private sta ...

  2. 【Spring】IOC:基于注解的IOC容器初始化源码分析

    从 Spring2.0 以后的版本中,Spring 也引入了基于注解(Annotation)方式的配置,注解(Annotation)是 JDK1.5 中引入的一个新特性,用于简化 Bean 的配置,可 ...

  3. 【Spring】ioc的常用注解

    背景 注解配置和Xml配置要实现的功能都是降低程序间的耦合.只是配置的形式不一样. 注解 曾经的XML配置 <bean id="accountService" class=& ...

  4. [Spring 深度解析]第6章 Spring的IoC容器系列

    6. Spring的IoC容器系列 ​ IoC容器为开发者管理对象之间的依赖关系提供了很多便利和基础服务.有许多IoC容器供开发者选择,SpringFramework的IoC核心就是其中一个,它是开源 ...

  5. Spring 的IOC容器系列的设计与实现:BeanFactory 和 ApplicationContext

    在Spring IOC容器的设计中,我们可以看到两个主要的容器系列,一个是实现BeanFactory接口的简单容器系列,这系列容器只实现了容器的最基本的功能,另一个是ApplicationContex ...

  6. spring源码分析第三天------spring核心IOC容器和依赖注入原理

    基于XML的依赖注入 1.依赖注入发生的时间 当 Spring IOC 容器完成了 Bean 定义资源的定位.载入和解析注册以后,IOC 容器中已经管理类 Bean 定义的相关数据,但是此时 IOC ...

  7. 【Spring】IoC容器系列的设计与实现:BeanFactory和ApplicationContext

    在Spring IoC容器的设计中,我们可以看到两个主要的容器系列,一个是实现BeanFactory接口的简单容器系列,这系列容器只实现了容器的最基本功能,另一个是ApplicationContext ...

  8. spring的IOC容器

    文章目录 1. IOC.IOC容器.Bean.DI 2. 核心概念小结 3,入门案例 3.1 IOC入门案例 3.1.1 入门案例思路分析 3.1.2 入门案例代码实现 步骤1:创建Maven项目 步 ...

  9. 透析Spring(一): Spring之IoC容器理解

    序言 记得刚毕业那会儿,出来招工作被问到Spring的核心时,都觉得简单的一笔,直接说不就是IoC(控制反转)和DI(依赖注入)么,然后省略一万字对两个名词的解释.最近空来整理了一下Spring中Io ...

  10. spring 什么是容器?什么是bean?

    什么是容器? 存储的东西就是一个容器. IOC 是一个容器,是一个具有依赖注入功能的容器, 我们要的对象就存在IOC这个容器里面. IOC容器也就是Spring容器 spring三大核心技术:AOP( ...

最新文章

  1. 在Kubernetes集群上部署高可用Harbor镜像仓库
  2. python界面设计实例-【Python】Tkinter图形界面设计(GUI)
  3. type python3_详解Python3中的Sequence type的使用
  4. C++STL——概述
  5. leetcode910. 最小差值 II(贪心)
  6. 技术动态 | 知识可视化,连接和探究知识之间的联系!
  7. 源码详解Java的反射机制
  8. 华为P50 Pro最新渲染图曝光 预装鸿蒙HarmonyOS 2
  9. netty cpu 占用率 高_交换机CPU使用率高问题定位
  10. eclipse中如何搜索带\的字串
  11. 安卓Android问卷调查系统app
  12. .Net5使用Sqlsugar操作加密Sqlite数据库
  13. 英语读音(二) / English Pronounciation
  14. 360企业版的IT管理价值
  15. python获取地图上经纬度_Python获取各大地图平台经纬度数据,哪家的数据最准确?...
  16. Windows更新后访问部分网页存在未连接到互联网的解决方案
  17. 加州大学欧文分校 计算机专业,加州大学欧文分校计算机专业申请条件(附案例)...
  18. matlab滤波实验,卡尔曼滤波实验及matlab实现
  19. 计算机社团技术部部长述职报告,社团管理部部长述职报告
  20. 卡巴斯基管理服务器地址更新

热门文章

  1. java基础-基础类型包装类型
  2. iptables命令结构之匹配扩展
  3. ofbiz碰到问题收集
  4. nagios介绍及Server安装(三)
  5. memcached全面剖析–5. memcached的应用和兼容程序
  6. 开启关闭Centos的自动更新
  7. [JNI]开发之旅(6)JNI函数中访问java类中对象的属性
  8. Luogu3431 [POI2005]AUT-The Bus
  9. 网络基础知识(黑马教程笔记)-3-http协议(响应报文)
  10. 使用Java打开外部程序