xml :可扩展标记语言: 标签可以任意定义,不需要进行编译,浏览器就可以解析
xml与html的区别:
1.xml 标签是可以任意定义 但是 html 的是不可以的
2.xml是数据的存储(配置文件) html 主要是做页面的显示
3.html5 比较火的前端技术有有xml+html结合,html5是依赖于xml
xml数据传输与数据库数据传输的区别
xml适合数据量小的小型应用 可以用于任何平台、任何操作系统、任何软件平台,但缺点就是不适合数据量大的 还有就是没有安全性。
数据库就安全性高 适应范围广,但缺点就是有平台限制、价格昂贵。
xml 的一个基本的结构: 1.xml的声明 2. 文档的基础信息(标签节点 属性节点 文本节点)
1.只能存在一个跟节点
2.标签一般都是成双的 如果是单个必须是结束标签
3.标签严格区别大小写
4.严格遵循驼峰命名
5.要注意标签与标签之间的缩进与空格
xml 中的一些特殊的符号:
< <
> >
& *amp;
' &aops;
" "
xml 解析的常见的方式
dom dom4j => 是把这个xml都会加载到内存里,然后对其进行解析(web) dom 4j 就是对dom的一个优化
sax ==>边加载,边解析(移动端)
dom 解析 ==> 1.第一步也就是需要把xml转换成一个dom树
具体的步骤 1.得到解析器工厂对象DocumentBuilderFactory
2.得到解析器对象
3.调用其方法把其转换成doc 对象 db.parse(file); 需要传递一个文件对象的参数
2.得到xml的信息: 1.根据getElementsByTagName()方法来获取到 所有的brand节点
2.遍历集合(NoteList) 获取集合的长度是getLength()
3.得到具体的节点
4.转换哼元素节点 获取元素中具体的值 getAttribute("name")
5. 获取下面的子节点:getChildNodes();
6.注意:判断其节点的类型 Node.ELEMENT_NODE
3.增加阶段的具体步骤:1.创建一个节点
2.设置其属性
3.添加父子关系
4.一层一层添加之后追加到根节点
4 保存到xml里 :1.得到其转换的工厂TransformerFactory
2.得到准换器Transformer
3.调用其方法 tf.transform() 需要传递两个参数 第一个是DOMSource(不要忘记把dom对象放入) 第二个参数是:StreamResult