SpringContextUtil.java 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package com.yihu.wlyy.util;
  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. import java.util.Locale;
  7. /**
  8. * Created by 刘文彬 on 2018/10/17.
  9. */
  10. @Component
  11. public class SpringContextUtil implements ApplicationContextAware {
  12. private static ApplicationContext context = null;
  13. /* (non Javadoc)
  14. * @Title: setApplicationContext
  15. * @Description: spring获取bean工具类
  16. * @param applicationContext
  17. * @throws BeansException
  18. * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)
  19. */
  20. @Override
  21. public void setApplicationContext(ApplicationContext applicationContext)
  22. throws BeansException {
  23. this.context = applicationContext;
  24. }
  25. // 传入线程中
  26. public static <T> T getBean(String beanName) {
  27. return (T) context.getBean(beanName);
  28. }
  29. // 国际化使用
  30. public static String getMessage(String key) {
  31. return context.getMessage(key, null, Locale.getDefault());
  32. }
  33. /// 获取当前环境
  34. public static String getActiveProfile() {
  35. return context.getEnvironment().getActiveProfiles()[0];
  36. }
  37. // 该工具类从网上抄来的,最后添加个获取方法就完成了,这样就能在代码级别通过环境条件来控制方法行为了。
  38. }