JavaWeb XML

embedded/2025/3/6 6:25:56/

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 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代码展示:

public class testDom4j {@Testpublic 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


http://www.ppmy.cn/embedded/170417.html

相关文章

SpringBoot项目集成ElasticSearch

1. 项目背景 处于失业找工作的阶段&#xff0c;随便写写吧~ 没啥背景&#xff0c;没啥意义&#xff0c;Java后端越来越卷了。第一学历不是本科&#xff0c;感觉真的是没有一点路可走。 如果有路过的小伙伴&#xff0c;如果身边还有坑位&#xff0c;不限第一学历的话&#xff0…

leetcode每日一题——1328. 破坏回文串

给你一个由小写英文字母组成的回文字符串 palindrome &#xff0c;请你将其中 一个 字符用任意小写英文字母替换&#xff0c;使得结果字符串的 字典序最小 &#xff0c;且 不是 回文串。 请你返回结果字符串。如果无法做到&#xff0c;则返回一个 空串 。 如果两个字符串长度…

leetcode1 两数之和 哈希表

什么时候使用哈希法&#xff0c;当我们需要查询一个元素是否出现过&#xff0c;或者一个元素是否在集合里的时候&#xff0c;就要第一时间想到哈希法。 242. 有效的字母异位词 (opens new window)这道题目是用数组作为哈希表来解决哈希问题&#xff0c;349. 两个数组的交集 (o…

Docker 学习(一)

一、Docker 核心概念 Docker 是一个开源的容器化平台&#xff0c;允许开发者将应用及其所有依赖&#xff08;代码、运行时、系统工具、库等&#xff09;打包成一个轻量级、可移植的“容器”&#xff0c;实现 “一次构建&#xff0c;随处运行”。 1、容器&#xff08;Container…

SpringBoot为什么要禁止循环依赖?

大家好&#xff0c;我是锋哥。今天分享关于【SpringBoot为什么要禁止循环依赖?】面试题。希望对大家有帮助&#xff1b; SpringBoot为什么要禁止循环依赖? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Spring Boot 和 Spring 框架之所以要避免循环依赖&#xf…

visual studio 2022中如何添加项目到解决方案中

在Visual Studio 2022中将现有项目添加到解决方案中&#xff0c;可按照以下步骤操作&#xff1a; ​打开解决方案资源管理器​ 在Visual Studio主界面中&#xff0c;通过菜单栏选择 ​视图 > 解决方案资源管理器&#xff0c;或直接使用快捷键打开该工具窗口。 ​右键添加现…

【长安大学】苹果手机/平板自动连接认证CHD-WIFI脚本(快捷指令)

背景&#xff1a; 前几天实在忍受不了CHD-WIFI动不动就断开&#xff0c;一天要重新连接&#xff0c;点登陆好几次。试了下在网上搜有没有CHD-WIFI的自动连接WIFI自动认证脚本&#xff0c;那样我就可以解放双手&#xff0c;随时用WIFI就行了&#xff0c;但是没有找到。于是我就…

华为hcie证书有什么作用?

新盟教育 专注华为认证培训十余年 为你提供认证一线资讯&#xff01; 在当今数字化飞速发展的时代&#xff0c;ICT行业对专业人才的需求日益增长。华为HCIE证书作为华为认证体系中的最高级别认证&#xff0c;无疑是众多IT从业者追求的目标。那么&#xff0c;华为HCIE证书到底有…