Java tutorial
/* * Copyright 2005-2013 shopxx.net. All rights reserved. * Support: http://www.shopxx.net * License: http://www.shopxx.net/license */ package com.zai360.portal.util; import org.springframework.beans.factory.DisposableBean; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; import org.springframework.util.Assert; import org.springframework.web.servlet.LocaleResolver; import java.util.Locale; /** * Utils - Spring * * @author SHOP++ Team * @version 3.0 */ @Component("springUtils") @Lazy(false) public final class SpringUtils implements ApplicationContextAware, DisposableBean { /** applicationContext */ private static ApplicationContext applicationContext; /** * ?? */ private SpringUtils() { } public void setApplicationContext(ApplicationContext applicationContext) { SpringUtils.applicationContext = applicationContext; } public void destroy() throws Exception { applicationContext = null; } /** * ?applicationContext * * @return applicationContext */ public static ApplicationContext getApplicationContext() { return applicationContext; } /** * ? * * @param name * Bean?? * @return */ public static Object getBean(String name) { Assert.hasText(name); return applicationContext.getBean(name); } /** * ? * * @param name * Bean?? * @param type * Bean * @return */ public static <T> T getBean(String name, Class<T> type) { Assert.hasText(name); Assert.notNull(type); return applicationContext.getBean(name, type); } /** * ?? * * @param code * ? * @param args * ? * @return ? */ public static String getMessage(String code, Object... args) { LocaleResolver localeResolver = getBean("localeResolver", LocaleResolver.class); Locale locale = localeResolver.resolveLocale(null); return applicationContext.getMessage(code, args, locale); } }