spring byType和byName 是什么意思

来源:4-4 Spring Bean装配之Autowired注解说明-3

丶子非鱼

2017-06-03 10:41

我不懂byName的原理

写回答 关注

2回答

  • 丶子非鱼
    2017-06-03 16:39:25

    意思就是bytype可能有多个?

    丶子非鱼

    嗯,正解,很久以前提的问题了,

    2017-09-03 22:27:13

    共 3 条回复 >

  • qq_AmorFati_9
    2017-06-03 16:24:00

    自动装配

    byName:通过属性名称自动装配。spring会检查set方法,比如你有一个setMaster(),这个方法提供注入,那相应的Bean name或者id 为master的Bean 就会被注入到协作者(就是类里面你所定义的引用型成员)中

    如:

    pubic class Test{

        private Master master;

        public void setMaster(Master master){

            this.master = master;

        }

    }

    <bean id="master" class="">


    byType:如果容器中存在一个与指定属性类型相同的bean,那么将与该属性自动装配。就是查找构造器或者方法中的参数,参数的类型匹配了就注入。

    如:

    pubic class Test{

        private Master master;

        public Test(Master master){

        }

        public void setMaster(Master master){

            this.master = master;

        }

    }

    <bean id="master" class="xxx.xxx.Master">

Spring入门篇

为您带来IOC和AOP的基本概念及用法,为后续高级课程学习打下基础

268785 学习 · 963 问题

查看课程

相似问题