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。

相关推荐
天若有情6733 天前
Spring配置文件XML验证错误全面解决指南:从cvc-elt.1.a到找不到‘beans‘元素声明
xml·java·spring
私人珍藏库4 天前
[Windows] 发票识别工具。支持xml、pdf、ofd文件
xml·pdf
Derrick__15 天前
Python常用内建模块——XML
xml·python
梵得儿SHI5 天前
Java 操作 XML 及动态生成报告:从解析到实战
xml·java·jaxb·dom4j·xml解析·操作xml·报告生成
张太行_7 天前
XML语言解析
xml
未来之窗软件服务8 天前
万象EXCEL开发(五)模拟excel行计算 ——东方仙盟练气期
xml·仙盟创梦ide·东方仙盟·万象excel
sun0077008 天前
网络配置config.xml的android.mk解析
android·xml
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ8 天前
mapper.xml中limit分页参数不能使用计算表达式问题
xml
余防9 天前
XXE - 实体注入(xml外部实体注入)
xml·前端·安全·web安全·html
未来之窗软件服务9 天前
万象EXCEL开发(四)格式解读theme1.xml ——东方仙盟练气期
xml·仙盟创梦ide·东方仙盟·万象excel