如何在春天从豆子里面得到豆子的ID?

2022-09-01 06:01:43

从该bean内部(在Java代码中)检索Bean ID的最简单方法是什么,而无需使用BeanPostProcessor来设置字段?

我能想到的唯一方法是使用BeanPostProcessor进行这样的操作:

public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
    ((MyBean)bean).setName(beanName);
    return bean;
}

有没有更好的方法,不需要我写一个额外的类或知道所讨论的豆子的类?我尝试在文档和Google上搜索,但我真的不确定我需要寻找什么。

谢谢!


答案 1

只需实现 org.springframework.beans.factory.BeanNameAware 接口,你就会自动获得它。它有一种方法:

void setBeanName(String name)

答案 2

推荐