• Spring Bean,什么是Bean?


    什么是Bean?

    Spring Bean是被实例的,组装的及被Spring 容器管理的Java对象。

    Spring 容器会自动完成 @bean对象的实例化。

    创建应用对象之间的协作关系的行为称为:装配(wiring),这就是依赖注入(DI)的本质。

    Spring 三种配置方案

    1.在XML中进行显示配置

    2.使用Java代码进行显示配置

    3.隐式的bena发现机制和自动配置 (首选推荐)

    一、自动化配置bean

    1.组件扫描(component scanning):Spring 会自动发现应用上下文中所创建的bean。
    2.自动装配(autowiring):Spring会自动满足bean之间的依赖。

    
    package com.stalkers.impl;
     
    import com.stalkers.ICompactDisc;
    import org.springframework.stereotype.Component;
     
    /**
     * Jay同名专辑
     * Created by stalkers on 2016/11/17.
     */
    @Component
    public class JayDisc implements ICompactDisc {
     
        private String title = "星晴";
     
        public void play() {
            System.out.println(title + ":一步两步三步四步,望着天上星星...");
        }
    }
    
    

    Component注解作用:

    表明该类会作为组件类

    不过,组件扫描默认是不开启用的,我们还需要显示配置下Spring,从而命令它去寻找到 @Component注解的类,并为其创建 bean。

    通过为bean添加注解实现自动装配

    如果所有对象都是独立的,彼此之间没有任何依赖,那么使用组件扫描就能自动化装配bean。

    但是实际工作中,很多对象会依赖其他对象完成任务。这时候就需要能够将组件扫描得到bean和他们依赖装配在一起。这就是自动装配(autowiring)

    
    @Component
    public class CDPlayer implements IMediaPlayer {
     
        private ICompactDisc cd;
        
        @Autowired
        public CDPlayer(ICompactDisc cd) {
            this.cd = cd;
        }
     
        public void play() {
            System.out.println("cd Play:");
            cd.play();
        }
    }
    
    

    Autowired的多种方式

    1.构造器注解(constructor)

    2.属性setter注解

    3.field注解

    不管使用上面三种的那种方法,Spring都会满足声明的依赖。

  • 相关阅读:
    如何计算时间复杂度
    注意线程
    java中一个类要当作线程来使用有两种方法
    压缩和解压
    init [0123456]
    linux文件目录
    为什么使用combiner?【Hadoop】
    JAVA标识符
    关键字:java
    转 java 中int String类型转换
  • 原文地址:https://www.cnblogs.com/nineberg/p/12286519.html
Copyright © 2020-2023  润新知