实现接口ApplicationContextAware
说明:实现该接口的setApplicationContext(ApplicationContext context)方法,并保存ApplicationContext 对象。
Spring初始化时,会通过该方法将ApplicationContext对象注入。
import java.util.Locale;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.NoSuchMessageException;
public class GnericUtils implements ApplicationContextAware {
private static ApplicationContext applicationContext;
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
applicationContext = applicationContext;
}
public static String getMessage(String code) {
return getMessage(code, (Object[])null, (Locale)null);
}
public static String getMessage(String code, String defaultMessage) {
return getMessage(code, (Object[])null, defaultMessage, (Locale)null);
}
public static String getMessage(String code, Object[] args) {
return getMessage(code, args, (Locale)null);
}
public static String getMessage(String code, Object[] args, String defaultMessage, Locale locale) {
return applicationContext.getMessage(code, args, defaultMessage, locale);
}
public static String getMessage(String code, Object[] args, Locale locale) throws NoSuchMessageException {
return applicationContext.getMessage(code, args, locale);
}
}
以上方法需要在xml文件中配置bean。