一,XML是什么
a) xml, eXtensible Markup Language, 可扩展标记语言.是一种标记语言.
b) xml 是一种非常灵活的语言, 没有固定的标签, 所有的标签都可以自定义.
c) 通常, xml 被用于信息的记录和传递. 因此, xml 经常被用于充当配置文件.
二,XML特点
a) 声明信息, 用于描述xml 的版本和编码方式
b) xml 有且仅有一个根元素
c) xml 是大小写敏感的
d) 标签是成对的, 而且要正确嵌套
e) 属性值要使用双引号
三,XML示例(内部规定版本)
]>
三国
罗贯中
50
明朝
天涯
30
第一行相当于说明这个文件是一个xml文件,类似于html页面的
第二行
相当于一个紧箍咒,规定了XML文件中根标签,以及子标签的格式
!ELEMENT规定:标签的儿子都有谁
!ATTLIST规定:标签的里面的属性的名称和值类型
具体可以参考菜鸟教程网站xml的内容
还有一种相对于内部规定的做法就是外部规定
四,DTD
a) DTD, Document Type Definition, 文档类型定义
b) DTD 用于约束xml 的文档格式, 保证xml 是一个有效的xml.
c) DTD 可以分为两种, 内部DTD, 外部DTD
写一个简单的DTD看看
其实就是把上面写的约束部分放到一个单独的文件而已
其作用也就是限制住xml文件的格式而已
五,XSD
XML Schema 是 DTD 的继任者,叫做XML Schema Definition
与 DTD 不同,XML Schema 支持数据类型(data type)和命名空间(namespace)。
具体也不是很懂.用到了就去百度吧
六,利用到xml的地方spring配置文件
mybatis的配置文件:SqlMapConfig.xml,xxxDao.xml配置文件
有时候有一些sdk利用xml来传输参数,或者传输返回值
-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
楼上这个就是mybatis的约束
七,针对xml的增删改查
这里就要用到dom4j的jar包
查询xml
增加xml
八/额外的知识点
默认情况下,java.io 包中的类总是根据当前用户目录来分析相对路径名。此目录由系统属性 user.dir指定,通常是Java 虚拟机的调用目录.”相对路径顾名思义,相对于某个路径,那么究竟相对于什么路径我们必须弄明白.按照上面jdk文档上讲的这个路径是”当前用户目录”也就是"java虚拟机的调用目录”.更明白的说这个路径其实是我们在哪里调用jvm的路径
idea的module会省略掉中间的那一级的文件夹名称 真是坑
如果是java se的话,就要用这个命令去试
九,个人总结
用的时候不多,但是值的了解一下
可以把xml理解成json或者map或者java对象,有很多key-value.
但是有一定的格式规定.
第一次写,先试试水,以后慢慢完善