《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7.3 写出文档
3.7.3 写出文档 有些奇怪的是,把DOM树写出到输出流中并非一件易事。最容易的方式是使用可扩展的样式表语言转换(Extensible Stylesheet Language Transformations, XSLT)API。关于XSLT的更多信息请参见3.8节。当下,我们先考虑根据生成XML输...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7.3 创建Optional值
1.7.3 创建Optional值 到目前为止,我们已经讨论了如何使用其他人创建的Optional对象。如果想要编写方法来创建Optional对象,那么有多个方法可以用于此目的,包括Optional.of(result)和Optional.empty()。例如, ofNullable方法被用来作为可...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7.2 带命名空间的文档
3.7.2 带命名空间的文档 如果要使用命名空间,那么创建文档的过程就会稍微有些差异。首先,需要将生成器工厂设置为是命名空间感知的,然后再创建生成器: 然后使用createElementNS而不是createElement来创建所有节点: 如果节点具有带命名空间前缀的限定名,那么所有必需的带有xml...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一1.7.2 不适合使用Optional值的方式
1.7.2 不适合使用Optional值的方式 如果没有正确地使用Optional值,那么相比较以往的得到“某物或null”的方式,你并没有得到任何好处。get方法会在Optional值存在的情况下获得其中包装的元素,或者在不存在的情况下抛出一个NoSuchElementException对象。因此...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7 生成XML文档
3.7 生成XML文档 现在你已经知道怎样编写读取XML的Java程序了。下面让我们开始介绍它的反向过程,即产生XML输出。当然,你可以直接通过一系列print调用,打印出各元素、属性和文本内容,以此来编写XML文件,但这并不是一个好主意。这样的代码会非常冗长复杂,对于属性值和文本内容中的那些特殊符...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.6.2 使用StAX解析器
3.6.2 使用StAX解析器 StAX解析器是一种“拉解析器(pull parser)”,与安装事件处理器不同,你只需使用下面这样的基本循环来迭代所有的事件: 解析器将产生下面的事件:1)START_ELEMENT,元素名:font2)CHARACTERS,内容:空白字符3)START_ELEME...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.6.1 使用SAX解析器
3.6.1 使用SAX解析器 SAX解析器在解析XML输入数据的各个组成部分时会报告事件,但不会以任何方式存储文档,而是由事件处理器建立相应的数据结构。实际上,DOM解析器是在SAX解析器的基础上构建的,它在接收到解析器事件时构建DOM树。在使用SAX解析器时,需要一个处理器来为各种解析器事件定义事...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.6 流机制解析器
3.6 流机制解析器 DOM解析器会完整地读入XML文档,然后将其转换成一个树形的数据结构。对于大多数应用,DOM都运行得很好。但是,如果文档很大,并且处理算法又非常简单,可以在运行时解析节点,而不必看到完整的树形结构,那么DOM可能就会显得效率低下了。在这种情况下,我们应该使用流机制解析器(str...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.5 使用命名空间
3.5 使用命名空间 Java语言使用包来避免名字冲突。程序员可以为不同的类使用相同的名字,只要它们不在同一个包中即可。XML也有类似的命名空间(namespace)机制,可以用于元素名和属性名。名字空间是由统一资源标识符(Uniform Resource Identif?ier, URI)来标识的...
《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.4 使用XPath来定位信息
3.4 使用XPath来定位信息 如果要定位某个XML文档中的一段特定信息,那么,通过遍历DOM树的众多节点来进行查找会显得有些麻烦。XPath语言使得访问树节点变得很容易。例如,假设有如下XML文档: 可以通过对XPath表达式/conf?iguration/database/username求值...
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。