SpringContextUtil.java 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package cc.mrbird.febs.common.utils;
  2. import org.springframework.beans.BeansException;
  3. import org.springframework.context.ApplicationContext;
  4. import org.springframework.context.ApplicationContextAware;
  5. /**
  6. * 用于从 IOC容器中获取 Bean
  7. *
  8. * @author MrBird
  9. *
  10. */
  11. public class SpringContextUtil implements ApplicationContextAware {
  12. private static ApplicationContext applicationContext;
  13. @Override
  14. public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
  15. SpringContextUtil.applicationContext = applicationContext;
  16. }
  17. public static Object getBean(String name) {
  18. return applicationContext.getBean(name);
  19. }
  20. public static <T> T getBean(Class<T> clazz){
  21. return applicationContext.getBean(clazz);
  22. }
  23. public static <T> T getBean(String name, Class<T> requiredType) {
  24. return applicationContext.getBean(name, requiredType);
  25. }
  26. public static boolean containsBean(String name) {
  27. return applicationContext.containsBean(name);
  28. }
  29. public static boolean isSingleton(String name) {
  30. return applicationContext.isSingleton(name);
  31. }
  32. public static Class<?> getType(String name) {
  33. return applicationContext.getType(name);
  34. }
  35. }