总结内容

1. Java中为什么要使用配置文件

为了减少代码的耦合性,以及便于后期维护,在开发中我们经常需要修改以前的数据,如果去改变代码容易出现一些错误,而有了配置文件我们就可以直接修改配置文件就好了,这样降低了代码之间的耦合性,同时也方便后期维护。

2. Java中常用的配置文件类型有哪些以及它们的特点

1)Java中常用的配置文件类型有 Properties 和 XML 配置文件。

Properties配置文件

  • 存储数据特点:
    1)使用键值对(key=value)格式,多对数据使用换行分开。
  • 使用注意事项:
    1)配置文件需要跟随着字节码走.需要放在 Resource Root 中. 会直接编译到字节码输出路径
    2)在配置文件中,所有的数据都是字符串,不需要使用引号
    3)在配置文件中不需要使用空格
  • 解析properties配置文件
public class PropertiesTest {
public static void main(String[] args) throws IOException {
// 读取配置文件中的数据
// Properties pt = new Properties(); // 解决路径写死问题,使用相对路径
// 相对于字节码的输出根路径,使用 ClassLoader 对象来获取字节码输出路径下的文件 InputStream in = Thread.currentThread(). // 当前线程
getContextClassLoader(). // 获取类加载器
getResourceAsStream("jdbc.properties"); // 加载配置文件
Properties pt = new Properties();
pt.load(in);
String username = pt.getProperty("jdbc.username");
String password = pt.getProperty("jdbc.password");
System.out.println("username = " + username);
System.out.println("password = " + password);
}
}

XML配置文件

  • 存储数据特点:
    1)xml是一种可扩展的标记语言

  • 使用xml配置文件的好处
    1)xml能存储小量数据,仅仅是存储数据。
    2)xml可以跨平台,主流各种平台都对xml有支持, 真正的跨平台,
    3)xml读取速度快。
    4)xml规范性非常强,这样就可以更好的去解释文件内的信息。
    5)xml 是各种应用程序之间进行数据传输的最常用的工具。
    6)xml 不适合动态语言但非常适合强类型的语言。java 处理 xml 更容易。

  • Document常用API
    1)document.getElementById(‘元素的ID’) 在整个文档中,通过元素的ID获取到这个元素对象(获取的是一个元素)
    注意: 如果页面中的id重复了,那么这个方法默认只获得第一个元素

    2)通过元素的标签名,来获取一组元素(有几个获取几个)
      document.getElementsByTagName(‘元素的标签名’) 在整个文档中,通过元素的标签名获取一组元素。获取的是一个对象数据类型结果,并且是一个类数组(以数字作为索引,索引从0开始,逐级递增,索引代表的是当前对应的某一个元素,有一个叫做length的属性代表获取的个数)

    3)document.getELementsByClassName(‘xxx’):这个跟上面一个类似,返回的也是数组,但是需要注意的是,它会返回所有包含xxx或者只有xxx的标签的数组。

  • 解析XML配置文件

public class XMLTest {
public static void main(String[] args) throws ParserConfigurationException, IOException, SAXException {
// 1、获取当前文档对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse("resources/user.xml");
// 2、获取根元素
Element root = document.getDocumentElement();
// 3、获取第二个 linkman 元素
// Element linkmanEl = (Element) root.getElementsByTagName("classname").item(0);
Element linkmanEl = (Element) root.getElementsByTagName("linkman").item(1);
// 4、获取第二个 linkman 元素下的 name 元素
Element nameEl = (Element) linkmanEl.getElementsByTagName("name").item(0);
// 5、获取文本内容
String content = nameEl.getTextContent();
System.out.println(content);
}
}

总结

以上就是对配置文件的总结了,代码仅供参考,欢迎讨论交流。

Java中读取 .properties 和 .xml 文件的更多相关文章

  1. 五种方式让你在java中读取properties文件内容不再是难题

    一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...

  2. java中采用dom4j解析xml文件

    一.前言 在最近的开发中用到了dom4j来解析xml文件,以前听说过来解析xml文件的几种标准方式:但是从来的没有应用过来,所以可以在google中搜索dmo4j解析xml文件的方式,学习一下dom4 ...

  3. JAVA中通过Jaxp操作XML文件基础

    Java中有多种方式操作XML文件,目前讲一讲以SUN公司提供的DocumentBuilderFactory工厂类对象操作XML. 使用XML基本操作就是需要CRUD(增删改查),那么首先通过一个查询 ...

  4. Java中读取.properties配置文件的通用类

    由于Java中读取配置文件的代码比较固定,所以可以将读取配置文件的那部分功能单独作为一个类,以后可以复用.为了能够达到复用的目的,不能由配置文件中每一个属性生成一个函数去读取,我们需要一种通用的方法读 ...

  5. Java中读取properties资源文件

    一.通过ResourceBundle来读取.properties文件 /** * 通过java.util.resourceBundle来解析properties文件. * @param String ...

  6. JAVA中使用DOM解析XML文件

    XML是一种方便快捷高效的数据保存传输的格式,在JSON广泛使用之前,XML是服务器和客户端之间数据传输的主要方式.因此,需要使用各种方式,解析服务器传送过来的信息,以供使用者查看. JAVA作为一种 ...

  7. java中利用dom4j解析XML文件

    官网下载Dom4j地址:https://dom4j.github.io/ 注意:使用Dom4j开发,需下载dom4j相应的jar文件 题目:后台利用dom4j解析student.xml文件,并返回Li ...

  8. Java中实现SAX解析xml文件到MySQL数据库

    大致步骤: 1.Java bean 2.DBHelper.java 3.重写DefaultHandler中的方法:MyHander.java 4.循环写数据库:SAXParserDemo.java ① ...

  9. 读取properties和xml中配置文件的值

    五种方式让你在java中读取properties文件内容不再是难题 在java中读取properties和xml文件中的方法:https://www.cnblogs.com/ConfidentLiu/ ...

随机推荐

  1. 实战:Spring AOP实现多数据源动态切换

    需求背景 去年底,公司项目有一个需求中有个接口需要用到平台.算法.大数据等三个不同数据库的数据进行计算.组装以及最后的展示,当时这个需求是另一个老同事在做,我只是负责自己的部分. 直到今年回来了,这个 ...

  2. jq 简易购物车功能实现

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...

  3. 怎么样在手机调试js,jq,html,如何在手机上调试js,javascript

    方法 直接在html中引入vconsole.js文件, 然后在js脚本中使用console.log('调试内容'); 即可看到如下效果,还可以在network里面看到ajax请求 我把js文件传到博客 ...

  4. 全量、增量数据在HBase迁移的多种技巧实践

    作者经历了多次基于HBase实现全量与增量数据的迁移测试,总结了在使用HBase进行数据迁移的多种实践,本文针对全量与增量数据迁移的场景不同,提供了1+2的技巧分享. HBase全量与增量数据迁移的方 ...

  5. Windows原理深入学习系列-信任等级检查

    这是[信安成长计划]的第 23 篇文章 0x00 目录 0x01 介绍 0x02 逆向分析 Win10_x64_20H2 0x03 WinDBG 0x04 参考文章 在之前的时候,一直以为 SACL ...

  6. 福利|GISer需知网站

    一些GISer需知的网站推荐 1.https://www.usgs.gov/ 美国地质调查局 美国地质勘探局(United States Geological Survey,简称USGS),又译美国地 ...

  7. 7. 堪比JMeter的.Net压测工具 - Crank 总结篇 - crank带来了什么

    目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...

  8. 关于深搜dps

    哈哈,我又来了! 但是!今天我又带来了让人开心到窒息的 ----深搜dps 其实关于深搜,概念没啥可讲的,总结一句话概括就是:一直往下搜,直到满足条件的,再回来,沿着下一条路搜,直到把路全走完为止.. ...

  9. 单循环链表(基于java语言)

    public class CircleSinglyLinkList { private Node head; CircleSinglyLinkList(){ this.head = null; } C ...

  10. 搭建域环境,安装Exchange Server 2013,复现CVE-2019-1040

    搭建域环境 操作系统: 域控:Windows server 2008 R2    域成员: Windows Server 2012 . Windows 7 对于将要安装成为DC的服务器来讲,其系统配置 ...