Java读取XML文件笔记。
最近在学习解了Spring原理,试想自己写一个简单的IOC与AOP玩玩,怎奈不熟xml格式与文件读取,只能先去学习了解咯,头疼,特此做一个XML文件读取笔记
首先是一个XML(文件名MySpring.xml)
<beans>
<bean id="user" class="com.xiaoli.model.User">
<property name="name" value="小立"></property> <!--姓名-->
<property name="age" value="22"></property> <!--年龄-->
<property name="sex" value="男"></property> <!--性别-->
</bean>
</beans>
然后是读取XML文件的Java代码
全部使用的Java原生API下的包
//第一步 读取 xml文件
//1、将xml文件转为输入流
InputStream in=Main.class.getClassLoader().getResourceAsStream("com/xiaoli/resouorce/MySpring.xml");
//2、创建一个DocumentBuilderFactory的对象
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
//3 创建DocumentBuilder对象
DocumentBuilder documentBuilder = dbf.newDocumentBuilder();
//4 通过DocumentBuilder对象的parser方法加载Io流文件
Document document = documentBuilder.parse(in);
in.close();
//5 获取所有bean节点的集合
NodeList beanList = document.getElementsByTagName("bean");
// 6 遍历bean标签
for(int i=0;i<beanList.getLength();i++){
//7 通过 item(i)方法 获取一个bean节点,beanlist的索引值从0开始
Node node = beanList.item(i);
//8 node 强制类型转换为Element
if(node instanceof Element){
Element el=(Element)node;
//9 获取bean标签里面的指定元素的值;
String beanId = el.getAttribute("id");
String beanClass = el.getAttribute("class");
System.out.println(beanId+" "+beanClass);
// 10 获取bean标签的子标签。
NodeList propertyList = el.getElementsByTagName("property");
//遍历子标签property
for(int j=0;j<propertyList.getLength();j++){
Node item = propertyList.item(j);
if(item instanceof Element){
Element ele=(Element)item;
String name = ele.getAttribute("name");
String value = ele.getAttribute("value");
System.out.println(name+" "+value);
}
}
}
}
最终得到结果
大功告成XML文件读取成功。
版权声明: 本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/qq_44614710/article/details/86741247