@Test public void test1(){ GenericApplicationContext genericApplicationContext=new GenericApplicationContext(); BeanDefinitionBuilder builder=BeanDefinitionBuilder.rootBeanDefinition(UserServiceImpl.class); BeanDefinitionBuilder daoBuilder=BeanDefinitionBuilder.rootBeanDefinition(UserDaoImpl.class); BeanDefinition definition=daoBuilder.getBeanDefinition(); genericApplicationContext.registerBeanDefinition("userDao", definition); builder.addPropertyReference("userDao", "userDao"); genericApplicationContext.registerBeanDefinition("userService", builder.getBeanDefinition()); UserService userService=genericApplicationContext.getBean(UserService.class); userService.save("hotbain", "123456"); genericApplicationContext.close(); }
动态实现bean的加载。