Spring 中如何生成 Bean Name?
生成 Bean Name 的规则如下:
-
如果 Bean 定义中指定了 Bean Name,则使用该名称作为 Bean Name。
-
如果 Bean 定义中没有指定 Bean Name,则使用 Bean 定义的类名作为 Bean Name。但是,如果类名以'Abstract'开头,则去掉'Abstract'并使用剩余部分作为 Bean Name。
-
如果同一个类有多个实例,则使用类名作为 Bean Name,并在后面加上一个递增的数字,以区分不同的实例。例如,com.example.MyClass 的第一个实例的 Bean Name 为'com.example.MyClass',第二个实例的 Bean Name 为'com.example.MyClass#1',第三个实例的 Bean Name 为'com.example.MyClass#2',依此类推。
-
如果 Bean 定义中指定了别名,则使用别名作为 Bean Name。
-
如果以上所有规则都不适用,则抛出异常,表示无法生成 Bean Name。
原文地址: https://www.cveoy.top/t/topic/lIjB 著作权归作者所有。请勿转载和采集!