/**
* 手动获取Spring上下文和Bean对象
*
* @Author li
* @Date 2017/9/6 17:07
*/
public class ApplicationUtil implements ApplicationContextAware {
private static ApplicationContext applicationContext;
private String fileNum;
public String getFileNum() {
return fileNum;
}
public void setFileNum(String fileNum) {
this.fileNum = fileNum;
}
/**
* 加载Spring配置文件时,如果Spring配置文件中所定义的Bean类实现了ApplicationContextAware接口,会自动调用该方法
*
* @param applicationContext
* @throws BeansException
*/
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
DocumentFileAction.applicationContext= applicationContext;
}
/**
* 获取Spring上下文
* @return
*/
public static ApplicationContext getApplicationContext() {
return applicationContext;
}
/**
* 获取Spring Bean
* @param name
* @return
* @throws BeansException
*/
public static Object getBean(String name) throws BeansException {
return applicationContext.getBean(name);
}
/**测试方法 */
public static void test(){
DocumentFileAction documentFileAction=(DocumentFileAction)getBean("documentFileAction");
System.out.println(documentFileAction.getFileNum()+"-----------");
}
}
在Spring配置文件中手动配置documentFileAction Bean
<bean id="documentFileAction" class="com.action.DocumentFileAction">
<property name="fileNum" value="${fileNum}"/>
</bean>