JavaEE XML 基础知识

@author ixenos

1.    XML开头都需要一个声明 <?和?>表明这是一个处理指令

<?xml version=”1.0” encoding=”UTF-8” ?>

2.    <book id=”1.0”>

</book>

等同于:

<book>

<id>1.0</id>

</book>

3.    XML格式能够表达层次结构(树),并且重复的元素不会被曲解

4.    XML与HTML区别

a)     XML是大小写敏感的

b)     XML不可省略结束标签

c)     XML只有单个标签时要/结尾,使解释器同时认其为结束标签<hr/>(注意区别<a></a>)

d)     XML属性值必须用引号括起来,而HTML引号可有可无

e)     XML属性必须有属性值,HTML属性可以没有属性值

                i.          HTML :<intput type=”radio” name=”language” value=”java” checked>其中checked属性没有属性值是允许的

5.     XML文档结构

示例:

<?xml version="1.0" encoding="UTF-8"?> //文档头

<!DOCTYPE …….> //文档类型定义DTD,用以确保文档正确的机制,但不是必须的

<bookstore> //这是根root元素

<book id="1">

<name>冰与火之歌</name>

<author>乔治马丁</author>

<year>2014</year>

<price>89</price>

</book>

<book id="2">

<name>安徒生童话</name>

<year>2004</year>

<price>77</price>

<language>English</language>

</book>

</bookstore>

a)    在设计XML文档的时候,最好使元素要么只包含子元素,要么只包含文本,尽量不要混合式内容(mixed content),可以简化解析过程(如getFirstChild())

                                i.          <font>  //不推荐的混合式

1.     Hell

2.     <size>36</size>

</font>

b)   XML元素可以包含属性:

                                i.          <size unit=”pt”>36</size>

常用法则:属性只应该用来修改值的解释,而不是用来指定值

如果值这样表示<font name=”Aero” size=”36”/> ,那么给size增加单位就必须添加到属性值中去:< font name=”Aero” size=”36 pt”/>,这样不够清真!耦合了,还是应该如下:

                                i.          <font>

                                          i.          <name>Areo</name>

                                         ii.          <size unit=”pt”>36</size>

</font>

这样增加或修改单位时就在size标签里指定属性就好

6.    元素(Element)和文本(Text)是XML文档的主要支撑元素,还有其他的一些标记如下:

a)     字符引用(character reference): &#十进制值、&#x十六进制值

                i.          &#233、&#xE9表示同一个字符

b)     实体引用(entity reference): &name 同样为了显示这些特殊符号而不触发命令

                i.          &lt、&gt、&amp、&quot、&apos

               ii.          分别表示字符:小于、大于、&、引号、省略号

              iii.          还可以在DTD中定义其他的实体引用

c)     CDATA部分(CDATA Section):  是用来表示字符数据的一种特殊形式,可以囊括那些含有<,>,&之类字符的字符串,而不会触发对应命令,用 <![CDATA[ 和 ]]> 限定界限,

                i.          注意CDATA中不能包含]]>字符串

               ii.          这一特性常被用来当作将遗留数据偷偷纳入XML文档的一个后门

d)     处理指令(processing instruction)是给那些处理XML文档的应用程序使用的指令, <? 和 ?> 来限定界限,例如:

                i.          <?xml-stylesheet href=”mystyle.css” type=”text/css”?>

               ii.          XML文档开头也是处理指令<?xml version=”1.0” encoding=”UTF-8”?>

e)     注释(comment)用 <!— 和 --> 限定界限

                i.          <!—This is a comment. --> 注释内容不能含有字符串 “—“

JavaEE XML 基础知识的更多相关文章

  1. JAVAEE规范基础知识

    JavaEE规范基础知识 本人博客文章网址:https://www.peretang.com/basic-knowledge-of-javaee-standard/ JavaEE简介 JavaEE,J ...

  2. .net学习笔记---xml基础知识

    一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...

  3. XML基础知识-->Spring配置

    XML的特殊字符 XML中共有5个特殊的字符,分别是:&<>“’.如果配置文件中的注入值包括这些特殊字符,就需要进行特别处理.有两种解决方法:其一,采用本例中的<![CDAT ...

  4. XML基础知识归纳(通俗易懂)

    XML:可扩展标记型语言 随着json等一些技术的普及,似乎xml的路子越来越窄,虽然xml的一些功能被其他的一些技术代替,但是学习xml还是非常有必要,如果用xml存储一些大量数据,还是有一定优势的 ...

  5. JavaWeb基础: XML基础知识

    简介 XML:可扩展标记语言,W3C指定的用于描述结构化数据的语言,XML在实际开发中,经常用作软件的配置文件,以描述程序模块之间的依赖和组合关系. XML约束:XML常常用于软件配置管理,对于软件框 ...

  6. XML基础知识

    1.XML:(entension mark language) 可扩展的标记语言格式化的文本文件html(Hype Text Mark Language)(超文本标记语言)主要用于显示2.特点 一个良 ...

  7. XML基础知识学习

    概念: XML 指可扩展标记语言 XML 是一种标记语言,非常类似 HTML ,文本文件. XML 的设计宗旨是数据传输,而非显示数据 .存储和传输复杂的关系模型数据 XML 标签没有被提前定义 使用 ...

  8. XML -- XML基础知识

    1.XML的结构 XML的结构采用的是树结构,树结构就是一种一对多的关系结构. XML必定有一个根节点.因为,在解析这个XML时,需要有个起始位置进行遍历解析,这个跟节点就是起始位置. 2.XML的元 ...

  9. Java——XML基础知识

    XML大小写敏感,不可省略结束标签,可以标签自闭合<img />,属性值必须用引号括起来.CDATA部分用<![CDATA[ ]]>来限定界限,它们是字符数据的一种特殊形式.可 ...

随机推荐

  1. [DP之多重背包优化方法]

    首先我们看一道有趣的题目 然后这道题很快想到是一个多重背包和无限背包混合体 那么我们就以这道题 来讨论一下多重背包的优化 首先我们看看朴素打法 memset(F,,]=; ;i<=N;i++) ...

  2. C语言考试可能会涉及到的内容

    以下是汽院下属科院C(B)考试范围,C(A)的话,不考的内容应该都会涉及到,重点内容会延伸至三.四章. 一.教材上的两套自测题 二.C语言实验与实训教程 第一章.第二章.第三章.第四章的典型练习及解释 ...

  3. lcd_1602

    module lcd_pdf( clk,lcd_data, lcd_rw,lcd_rs, lcd_en,rst_n ); input clk; input rst_n; output reg [:] ...

  4. jenkins 杀死衍生进程

    解决方法-1: 在execute shell输入框中加入BUILD_ID=DONTKILLME,即可防止jenkins衍生进程 解决方法-2: 修改/etc/sysconfig/jenkins配置,在 ...

  5. 面试经典——从输入 URL 到页面加载完的过程中都发生了什么事情?

    想要更加了解http协议,猛戳这里 1)把URL分割成几个部分:协议.网络地址.资源路径.其中网络地址指示该连接网络上哪一台计算机,可以是域名或者IP地址,可以包括端口号:协议是从该计算机获取资源的方 ...

  6. [SQL基础教程] 1-5 表的删除和更新

    [SQL基础教程] 1-5 表的删除和更新 表的删除 语法 DROP TABLE <表名>; 法则 1-12 删除的表无法恢复 表定义的更新 语法 ALTER TABLE<表名> ...

  7. SpannableString可以被点击的文字

    1 TextView tv= (TextView) findViewById(R.id.textview_z); String text="一段可以被点击点击的文字,文字可以变成图片&quo ...

  8. 改造vim

    1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可: lingd@ubuntu:~/arm$sudo apt-get install vim vim-sc ...

  9. JDK7 LinkedList源代码分析

    transient int size = 0; /** * Pointer to first node. * Invariant: (first == null && last == ...

  10. Objective-C Runtime 运行时之二:成员变量与属性(转载)

    在前面一篇文章中,我们介绍了Runtime中与类和对象相关的内容,从这章开始,我们将讨论类实现细节相关的内容,主要包括类中成员变量,属性,方法,协议与分类的实现. 本章的主要内容将聚集在Runtime ...