初始XML

回到首页☞

XML只是一个数据标记语言,但是无处不在。

XML是W3C推出的新一代数据交换的标准,可以用于定义Web网页上的文档元素和商业文档,同时还可以用于复杂结构数据的表示和传输,在结构上类似于HTML。

1 什么是XML

XML是Extensible Markup Language的简写,一种扩展性标志语言,它是一种能够让用户自己创造标识的语言,可以存储数据和共享数据。
XML最大的特点就是它的可扩展性。
其实目前看json更完美,但是目前主流框架都是用的XML做各种配置。
XML简单的历史介绍:

  • gml->sgml->html->xml
  • gml(通用标记语言)–在不同的机器进行通信的数据规范
  • sgml(标准通用标记语言)
  • html(超文本标记语言)

2 XML的用途

2.1 存储数据

就是XML最基本的用途,用于持久化存储数据,例如web.xml,hbm.xml,beans.xml等。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0"
         metadata-complete="true">
    <display-name>test</display-name>
    <servlet>
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>com.wht.demo.servlet.HelloServlet</servlet-class>
        <init-param>
            <param-name>startPoint</param-name>
            <param-value>5500</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
        <servlet-name>FirstServlet</servlet-name>
        <servlet-class>com.wht.demo.servlet.FirstServlet</servlet-class>
        <init-param>
            <param-name>message</param-name>
            <param-value>Welcome to FirstServlet</param-value>
        </init-param>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>

    </servlet>
    <servlet>
        <servlet-name>login</servlet-name>
        <jsp-file>/pages/Singleton.jsp</jsp-file>
    </servlet>
    <servlet-mapping>
        <servlet-name>login</servlet-name>
        <url-pattern>/Singleton</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/HelloServlet</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>FirstServlet</servlet-name>
        <url-pattern>/FirstServlet.jsp</url-pattern>
        <url-pattern>/FirstServlet.html</url-pattern>
        <url-pattern>/FirstServlet.php</url-pattern>
        <url-pattern>/FirstServlet.asp</url-pattern>
    </servlet-mapping>


    <listener>
        <listener-class>com.wht.demo.listener.LoginSessionListener
        </listener-class>
    </listener>
    <listener>
        <listener-class>com.wht.demo.listener.OnLineListener
        </listener-class>
    </listener>

    <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/databaseWeb</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>

</web-app>

2.2 分离数据

XML可以将数据和XML的展现相分离,使数据的组织人员更能够集中精力组织数据。
一些模板技术,还有一些XML框架体现的淋漓尽致,例如ADF,OAF。

2.3 数据交换

有一些老的接口还是交换的XML数据,因为XML同一规范,可以做到不同系统间的数据传输的兼容,当然现在json更好。
Ajax、Web Service、SOA等。

2.4 共享数据

XML是用纯文本存储数据的,也就是可以提供一种与软件和硬件无关的共享数据方法。DOC 是word文档只能用office打开,但是XML这种纯文本的,很多应用程序都可以很轻松的进行读写。

3 XML的技术架构

XML被设计为“什么都不做”,XML数据或XML文档只用于组织、存储数据,除此之外的数据生成、读取、传送、存取等等操作都与XML本身无关!

于是乎,想要操作XML,就需要用到XML之外的技术了:

  • 为XML定规则:现在一般使用DTD或Schema技术,当然了Schema技术更为先进!
  • 解析XML的数据:一般使用DOM或者SAX技术,各有各的优点
  • 提供样式:XML一般用来存储数据的,但设计者野心很大,也想用来显示数据,就有了XSLT(eXtensiable Stylesheet Language Transformation)可扩展样式转换语言

4 XML开发工具

只要能编辑纯文本的工具都可以编写XML

5 知识扩展

5.1 DTD技术

文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。

DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。

5.2 Schema技术

Schema 是 DTD 的代替者,名称为 XML Schema,用于描述XML 文档结构,即对XML文档做出规范,比 DTD 更加强大,最主要的特征之一就是XML Schema 支持数据类型。 Schema,提纲;提要

  1. Schema 是用 XML 验证 XML 遵循的语法

  2. Schema 可以用能处理 XML 文档的工具处理

  3. Schema 大大扩充了数据类型,而且还可以自定义数据类型

  4. Schema 支持元素的继承

  5. Schema 支持属性组

回到首页☞

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值