package com.baizhi.springboot_jsp_shiro.util;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
@Component
public class ApplicationContextUtils implements ApplicationContextAware {
private static ApplicationContext context;
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
//将工厂创建的所有对象赋值给当前的context
this.context = applicationContext;
System.out.println(context);
}
//根据bean名称获取在工厂中指定的bean对象
public static Object getBean(String beanName){
return context.getBean(beanName);
}
}
在其它类中使用类名.getBean("对象名")获取
UserService userService = (UserService) ApplicationContextUtils.getBean("userServiceImpl");