前言:昨天与大家分享了DTD的一些知识,今天与大家分享的是xml解析,xml在整个前端中是很重要。跟着思维导图来看看我今天要分享东西。
一、JAVA中配置文件的三种位置以及读取方式
1、在同一包中:
读取方式:直接写文件名(如图所示)
2、在同一根目录下(与src资源并列)
读取方式:在路径前面要加"/",不然会报错。(注意:一定一定要加"/")
3、在WEB-INF中
读取方式:因为是存放在web-inf目录下,情况比较特殊,不能被外界直接访问,所以只能通过间接的方式去拿到值。
二、demo4j:xml文档解析器
1、四种方法:
1、SAXReader:读取.xml文件专用方法
2、selectNodes():获取节点对象,返回的是一个List集合
3、attributeValue():获取指定对象的值
4、selectSingleNode():获取单个对象
5、getText():获取文本信息
三、xpath:xml文档解析器,xpath也是一种解析器,比demo4j简单。可以通过对比来得出。
1、语法:1、定位路径
2、@属性
第一张图是demo4j文档解析器的图,图二是xpath解析器解析xml文件,图三是解析时要用的文件。
四、拓展:
1、获取所有action中的type值
思路 :
1、先取到目标文件
2、然后读取文件
3、通过selectNodes方法取到元素集合
4、遍历集合,通过取到属性值拿到最后的值
2、获取第二个action中的type值
思路:
1、 先取到目标文件
2、然后读取文件
3、通过selectNodes方法取到元素集合
4、因为要取第二个action的所有type值,调用get(1);
5、通过取到属性值拿到最后的值
![](https://img-blog.csdnimg.cn/20210729204542298.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzUzMTUxMDMx,size_16,color_FFFFFF,t_70)
3、获取第二个action中的所有forward的path
思路:
1、 先取到目标文件
2、然后读取文件
3、通过selectNodes方法取到元素集合
4、因为要取第二个action的所有type值,调用get(1);
5、然后再到get(1)中调用selectNodes(forward)方法,取到forward集合,
6、遍历集合,通过取到属性“path”值拿到最后的值
![](https://img-blog.csdnimg.cn/20210729204628229.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzUzMTUxMDMx,size_16,color_FFFFFF,t_70)
四、获取第二个action中的第二个forward的path
思路:
1、 先取到目标文件
2、然后读取文件
3、通过selectNodes方法取到元素集合
4、因为要取第二个action的所有type值,调用get(1);
5、然后再到get(1)中调用selectNodes(forward)方法,取到forward集合,
6、取集合里的第二个forward,list.get(1);
7、通过取到属性“path”值拿到最后的值
总结:今天的分享就到这里了,如有漏缺,请大神多多指教。祝大家生活愉快,天天开心!