ApplicationContextHandler.java 1.0 KB

1234567891011121314151617181920212223242526272829
  1. package com.idea.oa.apply.service;
  2. import org.springframework.beans.BeansException;
  3. import org.springframework.context.ApplicationContext;
  4. import org.springframework.context.ApplicationContextAware;
  5. import org.springframework.stereotype.Component;
  6. @Component
  7. public class ApplicationContextHandler implements ApplicationContextAware {
  8. private static ApplicationContext applicationContext;
  9. @Override
  10. public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
  11. ApplicationContextHandler.applicationContext = applicationContext;
  12. }
  13. //此种方式在使用taskService名字获取bean时找不到,可自己试试其他名字。
  14. public static Object getBean(String name) {
  15. return ApplicationContextHandler.applicationContext.getBean(name);
  16. }
  17. public static <T> T getBean(Class<T> clazz) {
  18. return applicationContext.getBean(clazz);
  19. }
  20. public static ApplicationContext getApplicationContext() {
  21. return ApplicationContextHandler.applicationContext;
  22. }
  23. }