• Java后端 学习路线 笔记汇总表【黑马程序员】
  1. XML学习笔记01【xml_基础、xml_约束】【day01】
  2. XML学习笔记02【xml_解析】【day01】

目录

01 xml_基础

今日内容

xml_概述

xml_快速入门

xml_组成部分

属性列表——encoding

指令:结合css

文本:CDATA区

XML 元素、XML 命名规则

02 xml_约束

xml_约束概述

xml_约束_dtd

xml_约束_schema

student.xml

student.xsd

application_mvc.xml


01 xml_基础

今日内容

  1. XML

    1. 概念
    2. 语法
    3. 解析

xml_概述

概念:Extensible Markup Language 可扩展标记语言
    * 可扩展:标签都是自定义的。 <user>  <student>

* 功能
        * 存储数据
            1. 配置文件
            2. 在网络中传输
    * xml与html的区别
        1. xml标签都是自定义的,html标签是预定义。
        2. xml的语法严格,html语法松散
        3. xml是存储数据的,html是展示数据

* w3c:World Wide Web Consortium,万维网联盟

xml_快速入门

语法:
    * 基本语法:
        1. xml文档的后缀名 .xml
        2. xml第一行必须定义为文档声明
        3. xml文档中有且仅有一个根标签
        4. 属性值必须使用引号(单双都可)引起来
        5. 标签必须正确关闭(单标签,自闭和:<hr/>)
        6. xml标签名称区分大小写
    * 快速入门:代码...        
    * 组成部分

  


<?xml version="1.0" encoding="UTF-8" ?><!--版本信息1.0-->
<users><!--根标签--><user id='1'><!--自己定义的标签,想写啥 就写啥--><name>zhangsan</name><age>23</age><sex>male</sex></user><user id='2'><name>lisi</name><age>24</age><sex>female</sex></user>
</users>
<!--
检验xml文档的正确性:
xml可以被所有的浏览器所解析,浏览器中有对应的xml解析引擎
将xml拖拽进浏览器,浏览器不报错,则xml书写正确!
-->

xml_组成部分

组成部分:
        1. 文档声明
            1. 格式:<?xml 属性列表 ?> (‘?’与‘<’、‘>’之间不能有空格)
            2. 属性列表:
                * version:版本号,必须的属性(xml第1版就是1.0,1.1版本不向下兼容,主流仍为1.0版)
                * encoding:编码方式。告知解析引擎 当前文档使用的字符集,默认值:ISO-8859-1
                * standalone:是否独立
                    * 取值:
                        * yes:文件独立,不依赖其他文件
                        * no:文件不独立,依赖其他文件
        2. 指令(了解):结合css
            * <?xml-stylesheet type="text/css" href="a.css" ?>
        3. 标签:标签名称 自定义
            * 规则:
                * 名称可以包含字母、数字以及其他的字符 
                * 名称不能以数字或者标点符号开始 
                * 名称不能以字母 xml(或者 XML、Xml 等等)开始 
                * 名称不能包含空格

4. 属性:
            * 由键值对构成,用引号(单双引号)引起来
            * id属性值唯一
        5. 文本:
            * CDATA区:在该区域中的数据会被原样展示
                * 格式:  <![CDATA[ 数据 ]]>

属性列表——encoding

指令:结合css

文本:CDATA区

XML 元素、XML 命名规则

02 xml_约束

xml_约束概述

* 约束:规定xml文档的书写规则
        * 作为框架的使用者(程序员):
            1. 能够在xml中引入约束文档
            2. 能够简单的读懂约束文档

xml_约束_dtd

* 分类:
    1. DTD:一种简单的约束技术。
    2. Schema:一种复杂的约束技术。

* DTD:
    * 引入dtd文档到xml文档中
        * 内部dtd:将约束规则定义在xml文档中
        * 外部dtd:将约束的规则定义在外部的dtd文件中
                * 本地:<!DOCTYPE 根标签名 SYSTEM "dtd文件的位置"> :SYSTEM表示系统本地
                * 网络:<!DOCTYPE 根标签名 PUBLIC "dtd文件名字" "dtd文件的位置URL">

xml_约束_schema

* Schema:
    * 引入:
        1.填写xml文档的根元素
        2.引入xsi前缀.  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        3.引入xsd文件命名空间. xsi:schemaLocation="http://www.itcast.cn/xml student.xsd"
        4.为每一个xsd约束声明一个前缀,作为标识  xmlns="http://www.itcast.cn/xml" 
            <students xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="http://www.itcast.cn/xml"
                xsi:schemaLocation="http://www.itcast.cn/xml  student.xsd">

student.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!-- 1.填写xml文档的根元素2.引入xsi前缀.  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"3.引入xsd文件命名空间.  xsi:schemaLocation="http://www.itcast.cn/xml  student.xsd"4.为每一个xsd约束声明一个前缀,作为标识  xmlns="http://www.itcast.cn/xml" -->
<students   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://www.itcast.cn/xml"xsi:schemaLocation="http://www.itcast.cn/xml  student.xsd"
><student number="heima_0001"><name>tom</name><age>18</age><sex>male</sex></student></students>

student.xsd

<?xml version="1.0"?>
<xsd:schema xmlns="http://www.itcast.cn/xml"xmlns:xsd="http://www.w3.org/2001/XMLSchema"targetNamespace="http://www.itcast.cn/xml" elementFormDefault="qualified"><xsd:element name="students" type="studentsType"/><xsd:complexType name="studentsType"><xsd:sequence><xsd:element name="student" type="studentType" minOccurs="0" maxOccurs="unbounded"/></xsd:sequence></xsd:complexType><xsd:complexType name="studentType"><xsd:sequence><xsd:element name="name" type="xsd:string"/><xsd:element name="age" type="ageType" /><xsd:element name="sex" type="sexType" /></xsd:sequence><xsd:attribute name="number" type="numberType" use="required"/></xsd:complexType><xsd:simpleType name="sexType"><xsd:restriction base="xsd:string"><xsd:enumeration value="male"/><xsd:enumeration value="female"/></xsd:restriction></xsd:simpleType><xsd:simpleType name="ageType"><xsd:restriction base="xsd:integer"><xsd:minInclusive value="0"/><xsd:maxInclusive value="256"/></xsd:restriction></xsd:simpleType><xsd:simpleType name="numberType"><xsd:restriction base="xsd:string"><xsd:pattern value="heima_\d{4}"/></xsd:restriction></xsd:simpleType>
</xsd:schema>

application_mvc.xml

<?xml version="1.0" encoding="UTF-8"?>
<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:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc.xsd"><context:annotation-config /><context:component-scan base-package="cn.cisol.mvcdemo"><context:include-filter type="annotation"expression="org.springframework.stereotype.Controller" /></context:component-scan><mvc:annotation-driven /><mvc:resources mapping="/resources/**" location="/resources/" /><beanclass="org.springframework.web.servlet.view.ContentNegotiatingViewResolver"><property name="order" value="1" /><property name="mediaTypes"><map><entry key="json" value="application/json" /><entry key="xml" value="application/xml" /><entry key="htm" value="text/html" /></map></property><property name="defaultViews"><list><beanclass="org.springframework.web.servlet.view.json.MappingJackson2JsonView"></bean></list></property><property name="ignoreAcceptHeader" value="true" /></bean><beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="viewClass"value="org.springframework.web.servlet.view.JstlView" /><property name="prefix" value="/WEB-INF/jsps/" /><property name="suffix" value=".jsp" /></bean><bean id="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><property name="maxUploadSize" value="209715200" /><property name="defaultEncoding" value="UTF-8" /><property name="resolveLazily" value="true" /></bean></beans>

赶紧学,加油~

XML学习笔记01【xml_基础、xml_约束】相关推荐

  1. JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  2. bigdata学习笔记--01 Linux基础--Linux目录结构

    本文章是记录个人在学习bigdata过程中的相关知识点,分享给大家,个人水平有限,多多包涵. 1. ssh远程登录 1.1 git bash ssh root@host 1.2 通过远程连接工具登录远 ...

  3. 学习笔记(01):C++基础入门21 精讲-01_C++基础课程的安排和需要持之以恒的学习态度...

    立即学习:https://edu.csdn.net/course/play/885/12312?utm_source=blogtoedu 李担心

  4. 密码算法学习笔记01:基础知识-公钥密码和混合密码系统

    来自书籍<图解密码技术 第三版.pdf> 密码算法基础知识-公钥密码和混合密码系统 一.公钥密码 公钥密码--用公钥加密,用私钥解密. 公钥密码无需向接收者配送用于解密的钥匙,只需向发送者 ...

  5. UE5学习笔记01(基础操作二)

    1.Outliner被翻译成"大纲". 2.当按住Shift键移动一个物体时,摄像机会追随被移动的物体,形成一种第三人称视角的感觉. 3.在Outliner中选择一个或者多个物体之 ...

  6. UE5学习笔记01(基础操作一)

    1.Editor播放状态下,Shift + F1可以显示鼠标. 2.Viewport内,鼠标左键上下拖拽是基于自身坐标前后移动视角,左右移动是左右环视:鼠标中键上下左右拖拽是基于自身坐标上下左右移动视 ...

  7. XML学习笔记02【xml_解析】

    Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 03 xml_解析 xml_解 ...

  8. JavaScript学习笔记02【基础——对象(Function、Array、Date、Math)】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  9. JavaScript学习笔记03【基础——对象(RegExp、Global)】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

最新文章

  1. Golang 使用Protocol Buffer 案例
  2. jca使用_使用JCA的密码学–提供者中的服务
  3. Esp8266物联网开发板详细使用教程
  4. mysql如何植入到oracle_MySQL性能优化之数据库Recovery改进策略
  5. NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现-
  6. android安全权限管理,Android 11 中的权限更新
  7. Jquery动态进行图片缩略
  8. 怎么使用PDF编辑器在PDF中插入图片?PDF插入图片的教程
  9. 今日头条推荐算法原理全文详解之三
  10. 任务一:实现图形计算功能 1 关键算法(30 分)输入一个正方体的边长(a)计算正方体的体积。要求:结果保留两位小数,使用带参数的方法实现
  11. 智能手机基于众包的室内定位
  12. linux怎么把dos改成unix_如何将文本文件在 Unix和DOS格式之间转换
  13. 面试之算法知识点总结
  14. 美通企业日报 | 四所中国大陆高校进入亚洲大学前十;工作时间过长威胁IT从业人员健康...
  15. 网络安全证书已过期或不可信怎么办
  16. Django 项目编码问题1UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd2 in position 0: invalid contin
  17. 阿里撤退百度放弃,应用商店十年神话终落幕
  18. CentOS之VI编辑器的常用命令
  19. 《作业疯了》超奇葩游戏挑战你的脑细胞
  20. 同样是做网站,为何你的不赚钱

热门文章

  1. 计算机管理器win,进入windows启动管理器,win启动管理器
  2. 大学计算机基础 课程的说课,大学计算机基础资料说课稿.ppt
  3. esxi虚拟化集群_ProxmoxVE 之集群安装(V5.2)
  4. sonarqube连mysql_.net持续集成sonarqube篇之sonarqube安装与基本配置
  5. 畅享云游戏,AWS云峰会邀你零距离体验强化学习!
  6. 层次分解位置编码,让BERT可以处理超长文本
  7. ACL 2020 | 知识库问答的多跳复杂问题查询图生成
  8. 变分自编码器系列:VAE + BN = 更好的VAE
  9. arXiv热文解读 | 不懂Photoshop如何P图?交给深度学习吧
  10. 二分法求解一元多次方程