public class BeanFactory {
/**
* 获取指定简单接口名对应的实现类
* @param <T>
* @param clazz
* @return
*/
public static <T> T getBean(Class<T> clazz){
InputStream ins = null;
try {
// 加载BeanFactory.properties属性文件
Properties pros = new Properties();
ins = BeanFactory.class.getResourceAsStream("/BeanFactory.propreties");
pros.load(ins);
// 读取实现类名
String className = pros.getProperty(clazz.getSimpleName());
// 返回类实例
return (T) Class.forName(className).newInstance();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
} finally{
if(ins != null)
try {
ins.close();
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
}
}
这个BeanFactory非常经典!
汤兄授课是对某一应用的实现由粗糙到细致、由狂乱到优雅,这一教学方式使得大家懂得最终的实现方式是如此优雅。
汤老师有些内项,但他十分愿意与学生们分享学习心得,并且给学生们很大的鼓励。老张、老方、老佟、老徐、汤兄都鼓励学生们努力学习...非常好