XML约束以及解析

XML是可以用户自定标签的,本身没有语法约束:
标签:即元素,不过其可以自定义
语法约束:html就是在xml之上加约束,实现标签的嵌套。<!DOCTYPE html>这行说明根标签是html.

语法约束常见的有两种:
1:dtd(document type definition)。规定xml文档中元素的名称,自元素的名称及顺序,元素的属性等
dtd调用方式有3种(该大写的大写...):
a.调用文件名方式:<!DOCTYPE web-app SYSTEM "web_2_3.dtd">(跟元素:web-app,SYSTEM "文件名.dtd",注意:.dtd文件与xml需在同一目录下)
b.内嵌代码方式:<!DOCTYPE web-app [..... ]>([]中为.dtd文件具体代码约束)
c.文档在网上:<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">(PUBLIC 格式)
2.Schema(.xsd):
两者区别:Schema更新,数据更加完善,支持命名空间,
什么是命名空间:当文件当如多个约束文件时,且有相同标签名时,无法区分,类似java中Date类,sql和util下都有Date.

下面解说一下一段spring配置文件:
第一行beans根元素
第二行是固定写法,遵守w3c规范
除了第二行,都是一个命名空间对应schemaLocation两行(一行名称,一行约束)
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:mybatis="http://mybatis.org/schema/mybatis-spring"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://mybatis.org/schema/mybatis-spring
http://mybatis.org/schema/mybatis-spring.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
常见解析有三种:
1.dom:将xml文档整个装载到内存中,故可以对文档进行增删改查,但由于xml文档过大,会导致内存溢出
2.sax:逐行解析,没执行一行,就会触发对应的事件,所以处理速度快,但是只能读,逐行释放资源
3.pull:android内置的xml解析,类似于sax
常见解析开发包:
jaxp:sun公司提供对dom以及sax的开发包
jDom:dom4j兄弟
jsoup:一种处理html特定解析开发包
dom4j:比较常见的解析开发包,hibernate底层采用.
用到dom4j依赖与:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. XML总结 1.1. XML简介 XML : 可扩展的标记语言。(和HTML非常类似的) 可扩展的。 自定义...
    Ethan_Walker阅读 8,469评论 0 12
  • 1、XML的语法 文档声明写法: <?xml version="1.0" ?>文档声明必须出现在xml文件...
    来个芒果阅读 5,118评论 0 1
  • 1. XML简介 以下内容来自于http://www.w3school.com.cn/xml 基本知识 XML 和...
    WebSSO阅读 6,038评论 1 7
  • 大纲: XML解析 引入 重点DOM解析SAX解析DOM解析 VS SAX解析 xPath技术 引入 xPath作...
    vpt阅读 3,490评论 0 2
  • 文|橙之亦 六人间的寝室只住了我们五个:我,波姐,晃姐,老孟,蔓子。其实我们之前住在八人间的,也不止这些人,两年半...
    橙之亦阅读 3,297评论 3 3

友情链接更多精彩内容