DTD 和 XSD

DTD

DTD= Document Type Definition 文档类型定义,xml约束语言,验证机制

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration     
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
</configuration>

DTD的声明解释

  1. DTD 是终以 !DOCTYPE 开头,空一格后跟着 文档的元素名称。
  2. 根元素名: configuration,每一个标签库定义文件都是以taglib为根元素,否则后报错
  3. PUBLIC “-//mybatis.org//DTD Config 3.0//EN” 公共DTD的名称,
  4. 在mybatis-3-config.xml会定义 <!ELEMENT configuration (properties?,settings?,typeAliases?,typeHandlers?..) 标签元素的关系和顺序
  5. 在mybatis-3-config.xml会定义 <!ELEMENT properties

XSD

文档结构描述xml的缩写 xml Schema Definition ,这种文件可以用来定义xml的文件结构
例如pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  • xmlns ns就是namespace命名空间,xmlns:hsj 如果xmlns后面没有写东西就是没有设置命名空间,他的值"http://maven.apache.org/POM/4.0.0" 就是全球唯一标识的字符串, 所有的标签都不需要加ns,如果xmlns:hsj加了命名空间,那么下面所有标签都需要加前缀 <hsj:version>
    为什么要用命名空间,因为version标签在很多xsd定义都有,spring有mybatis有maven也有 那么怎么区分version标签由哪个xsd解析,就通过命名空间区分
  • xmlns:xsi 是为了定义 叫做"http://www.w3.org/2001/XMLSchema-instance" 的命名空间,如果不定义下面就无法使用 xsi:schemaLocation
  • xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”> 他的值是个键值对,k v key就是上面xmlns命名空间,值是要使用的xsd文件, 这句话的意思是该xml文件使用的规范是 使用pom/4.0.0命名空间 下的maven-4.0.0.xsd文件定义的规范
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值