package cn.itcast.DTD;

import java.io.File;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
/*
 * XML解析方法:分3种:DOM,SAX,PULL,本案例是使用dom4j
 * 解析器有JAXP,JDom,jsoup,dom4j,最常用dom4j
 * 步骤如下
 * 1.创建SAXReader对象,read(xml文件名)加载xml文件
 * 2.创建Document对象,getRootElement获得根元素
 * 3.Element对象
 * a)   elements(.....) 获得指定名称的所有子元素集合,然后可以用来遍历
 * b)   element(.....) 获得指定名称的第一个子元素
 * c)   getName()  获得当前元素的元素名
 * d)   attributeValue(...)  获得指定属性名的属性值
 * e)   elementText(...) 获得指定名称子元素的文本值
 * f) getText() 获得当前元素的文本内容
 */
import org.junit.Test;

public class DTD_dom4j_Dema1 {
@Test
public void test() {
try {
SAXReader sr = new SAXReader();
Document docu = sr.read("src/web_dtd.xml");
Element rootElement = docu.getRootElement();
//System.out.println(rootElement.attributeValue("version"));//1.0
List<Element> list = rootElement.elements();
// for(Element e : list) {
// System.out.println(e.getName());//servletservlet-mapping welcome-file-list
// }
//Element childElement = rootElement.element("servlet-mapping");
//System.out.println(childElement.getName());//servlet-mapping
//System.out.println(childElement.elementText("url-pattern"));//http://www.baidu.com

Element childElement = rootElement.element("servlet-name");
Element kid = childElement.element("servlet-name");
String a = kid.getText();

System.out.println(a);

蓝色部分是报错的原因,我就想用写getText();方法获取文本,最后报了空指针,懵逼了大叔


} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

这个空指针异常我是一脸懵逼的相关推荐

  1. 只花5-10分钟评审,还不提供拒稿理由,IJCAI就“枪毙”42%论文,网友:一脸懵逼...

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI 今年的IJCAI,真可谓是 ...

  2. 2020全国高考作文题出炉!网友:信心满满的点开,一脸懵逼的退出

    7月7日,2020年这个特别的高考如期来临,伴随着多地的暴雨,考生们完成了第一门的语文考试.11点半结束后,各省的高考作文题目也陆续出来了,一起来看看今年有什么有意思的题目吧. 全国Ⅰ卷 阅读下面的材 ...

  3. 初看一脸懵逼,看懂直接跪下!

    往期热门文章: 1.再见 BeanUtils!性能真拉跨! 2.被公司辞退拿了22万补偿金,原东家称回来后每月涨薪7000,只要退还22万 3.用 Dubbo 传输文件?被老板一顿揍! 4.45 个 ...

  4. 重磅!IJCAI 2020 好狠,超四成论文未经全文评审就out!被拒作者:一脸懵逼,反馈意见呢?...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! IJCAI-PRICAI 2020,第29届国际人工智能联合会议和第17届环太平洋 ...

  5. 一脸懵逼学习Hadoop中的序列化机制——流量求和统计MapReduce的程序开发案例——流量求和统计排序...

    一:序列化概念 序列化(Serialization)是指把结构化对象转化为字节流. 反序列化(Deserialization)是序列化的逆过程.即把字节流转回结构化对象. Java序列化(java.i ...

  6. kuangbin带我飞QAQ DLX之一脸懵逼

    1. hust 1017 DLX精确覆盖 模板题 勉强写了注释,但还是一脸懵逼,感觉插入方式明显有问题但又不知道哪里不对而且好像能得出正确结果真是奇了怪了 1 #include <iostrea ...

  7. visual studio 判断dropdownlist选的是什么_测试:选一顶你觉得最漂亮的皇冠。测你长了张什么脸?我是发财脸...

    测试:选一顶你觉得最漂亮的皇冠.测你长了张什么脸?我是发财脸 A. B. C. D. 选A 你长了一张冷酷脸.你是一个比较高冷的人,与其说是高冷,也可以说是比较慢热型,在面对陌生人的时候,你总是给人一 ...

  8. python里的点_Python里面这些点,据说80%的新手都会一脸懵逼

    01.函数里面的 *args 1).可变参数 这个是什么鬼,尤其是有其他c,c++语言基础的人,看到这个点,一定懵逼了,难道是指针,两个**又是什么鬼? 其实这个Python里面的函数入参的几种形式, ...

  9. 这段c语言代码牛逼在哪?看得我一脸懵逼!

    有人说C语言是世界上最牛逼的语言,因为操作系统就是用C语言编写的,学好了C才能更好的学习其他编程语言.为此,有人分享了下面一段代码,说是很牛逼的c语言代码,看得小编一脸懵逼.大家来看看,它究竟牛在哪里 ...

最新文章

  1. 为Linux上的Tomcat安装apr支持
  2. lua把userdata写入mysql_Lua教程(十九):userdata
  3. why my filter by titleID does not work
  4. C++set容器-插入和删除
  5. Python之进程+线程+协程(事件驱动模型、IO多路复用、select与epoll)
  6. asp net服务器虚拟路径,asp.net获取服务器虚拟路径
  7. Hao Yin Jian 寒假第一周
  8. 森林结点数,边数与树个数的关系
  9. Highlighter与BooleanQuery查询
  10. 小程序中的大道理之二
  11. 网易云音乐播放器缓存文件转换研究
  12. 蜡笔小新 (python)
  13. 树莓派控制3631AS数码管 驱动 python程序 共阴数码管|徐奥雯编写|XUAOWEN
  14. linux 命令 置顶,[置顶] Linux命令惯用法
  15. 搭建公司内部论坛 只需简单三步 1 (安装Discuz)
  16. 指向vector的指针
  17. KEGG注释(生信学习)
  18. 听说你立志要做数据分析,不如先听听老司机的建议?
  19. 关于一粒云盘使用心得
  20. 惠普(hp)3803tx xp 驱动程序 安装教程

热门文章

  1. 综合日语第一册第十二课
  2. 手机开锁显示无法连接到服务器是什么问题,苹果手机连接服务器失败原因 苹果手机连接服务器失败是什么原因...
  3. 个人外汇买卖能不能一直等到赢利再平仓
  4. 非常不错的停用词词表
  5. 报错:IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or
  6. 股价上涨,资金流出以及内外盘的关系
  7. Virtual Box 网络静态IP配置
  8. uniapp app真机测试
  9. 国开电大 公共关系学 形考任务答案 实训项目
  10. Python+OpenGL绘制任意长度和次数的B样条曲线