1.常见的配置文件
1.1 properties
数据库的连接就使用properties文件作为配置文件,properties文件中的配置信息是以键值对的形式存储的。
beiluo.jdbc.url=jdbc:mysql://localhost:3306/beiluo
beiluo.jdbc.driver=com.mysql.cj.jdbc.Driver
beiluo.jdbc.username=root
beiluo.jdbc.password=root
1.2 XML
- XML是Extensible Markup Language的缩写,即可扩展标记语言。XML与HTML一样都是标记语言,所以基本语法都是标签。
- 可扩展意思是标签的名称可以是自定义的,但不代表可以随便写。
- XML在Java中常用于配置文件。我们不需要从头到尾的写XML文件,而是在第三方应用程序、框架已提供好的配置文件的基础上修改。
- 在XML基本语法规范的基础上,使用的第三方应用程序、框架会通过XML约束的方式强制规定配置文件中可以写什么和怎么写。
- XML文件的文档声明必须放在文件的第一行。
- XML是有约束的,约束限定了XML文件内能编写的内容。有了约束之后,就不能随意自定义标签。在编写XML文件时,会有标签提示。有两种约束:
- dtd约束:简单、上手快,但约束不够细致。
- schema约束:复杂、上手慢,但约束细致。.xsd结尾的就为schema约束。
<?xml version="1.0" encoding="UTF-8"?>
<jdbc>
<username>root</username>
<passwoerd>root</passwoerd>
<driver>com.mysql.cj.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/beiluo</url>
</jdbc>
1.3 YAML
SpringBoot就是用YAML作为配置文件。
1.4 json等
json文件通常用于做文件传输,也可以用来做前端或移动端的配置文件。
还有一些其他的配置文件。
2. DOM4J进行XML解析
2.1 DOM4J使用步骤
- 导入jar包,dom4j.jar。
- 创建解析器对象(SAXReader)。
- 解析XML获得Document对象。
- 对Document对象进行访问和操作。
2.2 API介绍
@Test
//要用Test注解,类名就不能为Test
public void test() throws DocumentException {
//创建SAXReader对象
SAXReader saxReader = new SAXReader();
//通过类加载器获得指向字节码根路径下的指定文件的输入流
InputStream inputStream = TestDOM4J.class.getClassLoader().getResourceAsStream("jdbc.xml");
//通过输入流获得document对象
Document document = saxReader.read(inputStream);
//由document对象获得根标签
Element rootElement = document.getRootElement();
//输出根标签的标签名
System.out.println(rootElement.getName());
//得到所有子节点
List<Element> elements = rootElement.elements();
//遍历子元素
for(Element ele : elements){
System.out.println("\t" + ele.getName());
Attribute idAttribute = ele.attribute("id");
System.out.println("\t\t" + idAttribute.getName() + ":" + idAttribute.getValue());
List<Element> eles = ele.elements();
for (Element childElement : eles) {
System.out.println("\t\t\t" + childElement.getName() + ":" + childElement.getText());
}
}
}