JavaWeb XML

1、定义

EXtension markup language

XML:可扩展自定义标记语言

2、XML的存在意义和用法

XML存在约束,可以自定义但也存在书写规则,一般不需要逐行书写。

我们使用XML,只需要基于第三方应用程序和已提供框架的配置文件进行修改。

3、常见配置文件的类型

(1)properties

实例:

<username>root</username>

<password>root</password>

<driver>com.mysql.cj.jdbc.Driver</driver>

<url>jdbc:mysql//localhost:3300/atguigu</url>

书写规范:

1.以键值对的形式书写

2.键和值之间有等号

3.必须顶格书写,前面不能有空格符号

(2)XML

xml的语法:

①根标签只有一个

②第一行永远是*<?xml version="1.0" encoding="UTF-8"?>*不允许放任何东西

③xml是有约束的,约束用于限定xml内部能编写的内容

xml两种约束 :

dtd 简单 约束没有schema细致

schema 复杂 约束细致

补充:

标签名、属性名建议使用小写字母

  • 属性必须有值

  • 属性值必须加引号,单双都行

XML的文档声明,这部分基本上是固定格式,要注意的是:

文档声明一定要从第一行第一列开始写。

DOM4J进行XML的解析:

Jdbc.xml文件信息

XML 复制代码
<?xml version="1.0" encoding="utf-8" ?>  <!-第一行固定书写-->

<jdbc>

 <dev>

     <username>root</username>

     <password>root</password>

     <driver>com.mysql.cj.jdbc.Driver</driver>

     <url>jdbc:mysql//localhost:3300/atguigu</url>

 </dev>

   

</jdbc>

java代码展示:

java 复制代码
public class testDom4j {

    @Test

    public void test() throws Exception{

        //读取jdbc.xml的配置文件  获得document文件

        SAXReader saxReader=new SAXReader();

        //通过类加载器获得指向字节码根路径下的指定文件的输入流

        InputStream resourceAsStream = testDom4j.class.getClassLoader().getResourceAsStream("jdbc.xml");

        //通过输入流获取配置文件,解析成一个dom对象

        Document document=saxReader.read(resourceAsStream);

        //从document对象上获得配置文件中的信息



        Element rootElement = document.getRootElement();

        System.out.println(rootElement.getName());


        List<Element> elements=rootElement.elements();

        for (Element element:elements){

            System.out.println("\t"+element.getName());

            Attribute idAttribute = element.attribute("id");

            System.out.println("\t"+idAttribute.getName()+"="+idAttribute.getValue());

        }

    }

}

Node 节点:

Element 元素结点

Attribute 属性结点

Text 文本节点

总结:

XML是配置文件,用于存储一些配置信息,作用类似于properties。

相关推荐
Ll13045252989 小时前
基于 COM 的 XML 解析技术(MSXML) 的总结
xml
在代码的海洋中寻找亚特兰蒂斯19 小时前
AJAX对于XML和JSON的处理
xml·ajax·json
BinField2 天前
ToolsSet之:XML工具
xml·windows·microsoft
SEO-狼术2 天前
Connect Directly to Oracle XML Data
xml·数据库·oracle
YSoup3 天前
2025年目前最新版本Android Studio自定义xml预览的屏幕分辨率
android·xml·android studio
abcnull4 天前
mybatis的mapper对应的xml写法
xml·sql·spring·mybatis·mapper
Blue桃之夭夭4 天前
HTML、XML、JSON 是什么?有什么区别?又是做什么的?
xml·html·json
小于村4 天前
pom.xml 文件中配置你项目中的外部 jar 包打包方式
xml·java·jar
扶风呀4 天前
pom.xml中标签详解_
xml
Blue桃之夭夭5 天前
Python进阶【四】:XML和JSON文件处理
xml·python·json