package bl.seven.common.spring;
import java.io.File;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import bl.seven.common.io.PostfixFilenameFilter;
public class SevenBeanFactory {
private static ApplicationContext ctx;
static {
File contextFile = new File("src/spring3.0");
String[] contextFileNames = contextFile.list(new PostfixFilenameFilter(
".xml"));
StringBuffer loadInfo = new StringBuffer();
loadInfo.append("开始加载beans配置文件:");
for (String contextFileName : contextFileNames) {
loadInfo.append(contextFileName).append(",");
}
System.out.println(loadInfo.substring(0, loadInfo.length() - 1));
ctx = new ClassPathXmlApplicationContext(contextFileNames);
System.out.println("beans配置文件加载完成!");;
}
public static <T> T getBean(Class<T> beanClass, String beanName) {
@SuppressWarnings("unchecked")
T t = (T) ctx.getBean(beanName);
return t;
}
}
如下是目录结构