GenericApplicationContext ctx = new GenericApplicationContext();
BeanDefinitionBuilder builderA = BeanDefinitionBuilder
.rootBeanDefinition(BeanA.class)
.addPropertyValue("name", "Joe");
ctx.registerBeanDefinition("bean-a", builderA.getBeanDefinition());
BeanDefinitionBuilder builderB = BeanDefinitionBuilder.rootBeanDefinition(BeanB.class)
.addPropertyReference("refA", "bean-a");
ctx.registerBeanDefinition("bean-b", builderB.getBeanDefinition());
ctx.getBean("bean-b");
上面的例子动态创建了两个 bean 定义,第二个Bean 引用了第一个Bean。
BeanDefinitionBuilder builderA = BeanDefinitionBuilder
.rootBeanDefinition(BeanA.class)
.addPropertyValue("name", "Joe");
ctx.registerBeanDefinition("bean-a", builderA.getBeanDefinition());
BeanDefinitionBuilder builderB = BeanDefinitionBuilder.rootBeanDefinition(BeanB.class)
.addPropertyReference("refA", "bean-a");
ctx.registerBeanDefinition("bean-b", builderB.getBeanDefinition());
ctx.getBean("bean-b");
上面的例子动态创建了两个 bean 定义,第二个Bean 引用了第一个Bean。
本文介绍了一个使用Java动态创建Spring Bean定义的例子。该例子展示了如何通过BeanDefinitionBuilder创建两个Bean定义,其中一个Bean引用了另一个Bean。
222

被折叠的 条评论
为什么被折叠?



