XML学习笔记01【xml_基础、xml_约束】
- Java后端 学习路线 笔记汇总表【黑马程序员】
- XML学习笔记01【xml_基础、xml_约束】【day01】
- 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_基础
今日内容
- XML
- 概念
- 语法
- 解析
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_约束】相关推荐
- JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- bigdata学习笔记--01 Linux基础--Linux目录结构
本文章是记录个人在学习bigdata过程中的相关知识点,分享给大家,个人水平有限,多多包涵. 1. ssh远程登录 1.1 git bash ssh root@host 1.2 通过远程连接工具登录远 ...
- 学习笔记(01):C++基础入门21 精讲-01_C++基础课程的安排和需要持之以恒的学习态度...
立即学习:https://edu.csdn.net/course/play/885/12312?utm_source=blogtoedu 李担心
- 密码算法学习笔记01:基础知识-公钥密码和混合密码系统
来自书籍<图解密码技术 第三版.pdf> 密码算法基础知识-公钥密码和混合密码系统 一.公钥密码 公钥密码--用公钥加密,用私钥解密. 公钥密码无需向接收者配送用于解密的钥匙,只需向发送者 ...
- UE5学习笔记01(基础操作二)
1.Outliner被翻译成"大纲". 2.当按住Shift键移动一个物体时,摄像机会追随被移动的物体,形成一种第三人称视角的感觉. 3.在Outliner中选择一个或者多个物体之 ...
- UE5学习笔记01(基础操作一)
1.Editor播放状态下,Shift + F1可以显示鼠标. 2.Viewport内,鼠标左键上下拖拽是基于自身坐标前后移动视角,左右移动是左右环视:鼠标中键上下左右拖拽是基于自身坐标上下左右移动视 ...
- XML学习笔记02【xml_解析】
Java后端 学习路线 笔记汇总表[黑马程序员] XML学习笔记01[xml_基础.xml_约束][day01] XML学习笔记02[xml_解析][day01] 目录 03 xml_解析 xml_解 ...
- JavaScript学习笔记02【基础——对象(Function、Array、Date、Math)】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- JavaScript学习笔记03【基础——对象(RegExp、Global)】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
最新文章
- Golang 使用Protocol Buffer 案例
- jca使用_使用JCA的密码学–提供者中的服务
- Esp8266物联网开发板详细使用教程
- mysql如何植入到oracle_MySQL性能优化之数据库Recovery改进策略
- NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现-
- android安全权限管理,Android 11 中的权限更新
- Jquery动态进行图片缩略
- 怎么使用PDF编辑器在PDF中插入图片?PDF插入图片的教程
- 今日头条推荐算法原理全文详解之三
- 任务一:实现图形计算功能 1 关键算法(30 分)输入一个正方体的边长(a)计算正方体的体积。要求:结果保留两位小数,使用带参数的方法实现
- 智能手机基于众包的室内定位
- linux怎么把dos改成unix_如何将文本文件在 Unix和DOS格式之间转换
- 面试之算法知识点总结
- 美通企业日报 | 四所中国大陆高校进入亚洲大学前十;工作时间过长威胁IT从业人员健康...
- 网络安全证书已过期或不可信怎么办
- Django 项目编码问题1UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd2 in position 0: invalid contin
- 阿里撤退百度放弃,应用商店十年神话终落幕
- CentOS之VI编辑器的常用命令
- 《作业疯了》超奇葩游戏挑战你的脑细胞
- 同样是做网站,为何你的不赚钱
热门文章
- 计算机管理器win,进入windows启动管理器,win启动管理器
- 大学计算机基础 课程的说课,大学计算机基础资料说课稿.ppt
- esxi虚拟化集群_ProxmoxVE 之集群安装(V5.2)
- sonarqube连mysql_.net持续集成sonarqube篇之sonarqube安装与基本配置
- 畅享云游戏,AWS云峰会邀你零距离体验强化学习!
- 层次分解位置编码,让BERT可以处理超长文本
- ACL 2020 | 知识库问答的多跳复杂问题查询图生成
- 变分自编码器系列:VAE + BN = 更好的VAE
- arXiv热文解读 | 不懂Photoshop如何P图?交给深度学习吧
- 二分法求解一元多次方程