Object bean,就是一个已经被创建的实例;
ApplicationContext:Spring的Context;
AutowireCapableBeanFactory.AUTOWIRE_BY_NAME:按照名字来注入,注入类型。
/** * 调用spring注入新创建对象的相关属性(根据属性名进行注入) * * @param bean * @param appContext */ public static void autowireBean(Object bean, ApplicationContext appContext) { autowireBean(bean, appContext, AutowireCapableBeanFactory.AUTOWIRE_BY_NAME); } /** * 调用spring注入新创建对象的相关属性 * * @param bean * @param appContext * @param autowireMode */ public static void autowireBean(Object bean, ApplicationContext appContext, int autowireMode) { if (bean == null || appContext == null) { return; } AutowireCapableBeanFactory factory = appContext.getAutowireCapableBeanFactory(); factory.autowireBeanProperties(bean, autowireMode, false); String beanName = ClassUtils.getUserClass(bean).getName(); factory.initializeBean(bean, beanName); }