介绍
如何使用BeanFactory创建对象?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
<强>说明:强>
,其作用是减少层与层之间的依赖。
<强>实现步骤:强>
编写2个类(学生、教师)再编写bean。属性文件,接着编写BeanFactory类,最后编写测试类中的BeanTest。
参考代码如下:
/* * ,* beans.properties文件的内容(位于与src平级的配置资源包下) ,*/学生=com.xxx.generic.demo.Student 老师=com.xxx.generic.demo.Teacher ,/* * ,* BeanFactory类的参考代码 ,*/import java.io.InputStream; import 活动; import java.util.HashMap; import java.util.Map; import java.util.Properties; import java.util.Set; , public class  BeanFactory { ,private BeanFactory (), { ,} , ,private static  Map<字符串,String>, beans =, new HashMap<在(); ,static { ,InputStream is =, BeanFactory.class.getClassLoader () .getResourceAsStream (“beans.properties"); ,Properties prop =, new 属性(); ,try { prop.load才能(是); Enumeration<才能;String>, keys =, (Enumerationkeys =, beans.keySet (); ,for (String key :键),{ if 才能;(key.equals(名称)),{ String 才能;value =, beans.get(关键); try {才能 ,,t =, (T), forname(值).newInstance (); ,,},catch (Exception e), { ,,e.printStackTrace (); ,,} 打破才能; ,,} ,} ,return t; ,} } ,/* * ,*中的BeanTest类参考代码 ,*/public class  BeanTest { ,public static  void main (String [], args), { ,Student s =, BeanFactory.getBean (Student.class); ,System.out.println (s +,“:我是“,+,s.getClass () .getSimpleName(), +,“的一个对象!”); ,Teacher t =, BeanFactory.getBean (Teacher.class); ,System.out.println (t +,“:我是“,+,t.getClass () .getSimpleName(), +,“的一个对象!”); ,} }
运行结果如下:
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。