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。

相关推荐
李少兄10 天前
解决OSS存储桶未创建导致的XML错误
xml·开发语言·python
阳光开朗_大男孩儿11 天前
XML读取和设置例子
xml·java·数据库
悟能不能悟12 天前
在 MyBatis 的xml中,什么时候大于号和小于号可以不用转义
xml·java·mybatis
慌糖13 天前
XML重复查询一条Sql语句??怎么解决
xml·数据库·sql
胖大和尚13 天前
在 XML 节点名称前添加前缀
xml
casual_clover14 天前
Android 中 解析 XML 字符串的几种方式
android·xml
SuperherRo15 天前
Web攻防-XSS跨站&文件类型&功能逻辑&SVG&PDF&SWF&HTML&XML&PMessage&LocalStorage
xml·pdf·html·svg·localstorage·swf·pmessage
'tubug'15 天前
XXE(XML外部实体注入)详解
xml·web安全
不太厉害的程序员19 天前
NC65配置xml找不到Bean
xml·java·后端·eclipse
峥嵘life20 天前
Android xml的Preference设置visibility=“gone“ 无效分析解决
android·xml