常见的配置文件格式:yaml,json,xml,ini,csv等

       

        

目录

       

        1、配置文件的作用

        2、什么是硬编码?

        3、常见的配置文件格式


        1、配置文件的作用

        为什么需要配置文件:

        主要作用是将应用程序或系统的配置参数和设置从源代码中分离出来,使它们变得易于修改和管理。通过将配置信息存储在配置文件中,而不是硬编码到应用程序中。

        易于维护,共享配置,灵活性,安全性等。

补充:

        2、什么是硬编码?

        硬编码(Hardcoding)是指在计算机程序或系统中直接嵌入常量或具体数值、字符串、文件路径等数值或文本信息,而不使用变量或配置文件来存储这些信息。硬编码的值通常直接写入源代码中,以固定不变的方式出现在程序中。

        3、常见的配置文件格式

        常用的配置文件格式有很多,具体使用取决于应用程序或系统的需求和偏好。以下是一些常见的配置文件格式:

  • YAML:YAML(YAML Ain't Markup Language)是一种人类可读的数据序列化格式,广泛用于配置文件和数据交换。它以缩进来表示层次结构,并且容易阅读和编辑。

文件通常以 .yaml  或 .yml为结尾。

注意:每个冒号后面使用空格:

# 这是一个YAML格式的配置文件示例
database:host: localhostport: 3306username: myuserpassword: mypasswordserver:port: 8080debug: true
  • JSON:JSON(JavaScript Object Notation)是一种轻量级数据格式,用于数据交换和配置文件。方便解析。

文件通常以 .json结尾。

// 这是一个JSON格式的配置文件示例
{"database": {"host": "localhost","port": 3306,"username": "myuser","password": "mypassword"},"server": {"port": 8080,"debug": true}
}
  • XML:XML(eXtensible Markup Language)是一种标记语言,用于存储和传输数据。它在配置文件中使用较少,但在数据交换和标记文档方面广泛使用。

通常在编程语言中常用,比如xxx.xml,存储配置。

<!-- 这是一个XML格式的配置文件示例 -->
<config><database><host>localhost</host><port>3306</port><username>myuser</username><password>mypassword</password></database><server><port>8080</port><debug>true</debug></server>
</config>
  • INI 文件:INI 文件是一种简单的文本文件格式,通常包含键值对,用于配置Windows应用程序和操作系统。

通常存储系统的配置文件,xxx.ini

; 这是一个INI格式的配置文件示例
[database]
host = localhost
port = 3306
username = myuser
password = mypassword[server]
port = 8080
debug = true
  • TOML:TOML(Tom's Obvious, Minimal Language)是一种易读的配置文件格式,具有层次结构,用于存储配置数据。

# 这是一个TOML格式的配置文件示例
[database]
host = "localhost"
port = 3306
username = "myuser"
password = "mypassword"[server]
port = 8080
debug = true
  • Properties 文件:属性文件通常用于Java应用程序,采用键值对的格式,以配置应用程序的属性。

通常以 .properties为结尾

# 这是一个Properties文件示例
# 注释以井号(#)开头database.host = localhost
database.port = 3306
database.username = myuser
database.password = mypasswordserver.port = 8080
server.debug = true
  • CSV:虽然主要用于存储表格数据,但CSV(逗号分隔值)文件也可以用于简单的配置文件,以列表形式存储数据。

通常以  .csv为结尾,在大数据中存储数据库包常用。

# 这是一个CSV格式的配置文件示例
name,value
database.host,localhost
database.port,3306
database.username,myuser
database.password,mypassword
server.port,8080
server.debug,true

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/123484.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务熔断保护实践--Hystrix

概述 微服务有很多互相调用的服务&#xff0c;构成一系列的调用链路&#xff0c;如果调用链路中某个服务失效或者网络堵塞等问题&#xff0c;而有较多请求都需要调用有问题的服务时&#xff0c;这是就会造成多个服务的大面积失效&#xff0c;造成服务“雪崩”效应。 服务“雪…

【C语言】优化通讯录管理系统

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家优化上一篇的通讯录&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 目录 一. 前言二. 动态通讯录2.1 通讯录结构体2.2 初始化通讯录2.3 增加联系人2.4 销毁通讯…

Mybatis中执行Sql的执行过程

MyBatis中执行SQL的过程可以分为以下几个步骤&#xff1a; 解析配置文件&#xff1a;在运行时&#xff0c;MyBatis会加载并解析配置文件&#xff08;通常为mybatis-config.xml&#xff09;&#xff0c;获取数据库连接信息、映射文件等。 创建SqlSessionFactory&#xff1a;MyB…

Redis原理-IO模型和持久化

高性能IO模型 为什么单线程Redis能那么快 一方面&#xff0c;Redis 的大部分操作在内存上完成&#xff0c;再加上它采用了高效的数据结构&#xff0c;例如哈希表和跳表&#xff0c;这是它实现高性能的一个重要原因。另一方面&#xff0c;就是 Redis 采用了多路复用机制&#…

HTML简单实现v-if与v-for与v-model

Vue启动&#xff01;&#xff01; 首先VIewModel将View和Model连接一起&#xff0c;Model的数据改变View的数据也变 使用Visual Studio Code 启动Vue需要vue.js插件和导入CDN(包) vue.js插件&#xff1a;CTRL shift x 在搜索栏搜 索vue.js安装即可 CDN&#xff1a; http…

UDP编程

UDP编程&#xff1a; 用packet和socket完成 ● 流 程&#xff1a; DatagramSocket与DatagramPacket 建立发送端&#xff0c;接收端 建立数据报&#xff0c;用于储存数据 调用Socket的发送、接收方法 关闭Socket ● 发送端与接收端是两个独立的运行程序 发送端&#xf…

orb-slam3编译手册(Ubuntu20.04)

orb-slam3编译手册&#xff08;Ubuntu20.04&#xff09; 一、环境要求1.安装git2.安装g3.安装CMake4.安装vi编辑器 二、源代码下载三、依赖库下载1.Eigen安装2.Pangolin安装3.opencv安装4.安装Python & libssl-dev5.安装boost库 三、安装orb-slam3四、数据集下载及测试 写在…

Python selenium模块简介

视频版教程&#xff1a;一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium 有些网站的数据是js动态渲染的&#xff0c;我们无法通过网页源码直接找到数据&#xff0c;只能通过找接口方式来获取数据&#xff0c;但是很多时候&#xff0c;数据又是json格式的…

k8s集群升级

目录 1. 部署cri-docker &#xff08;所有集群节点&#xff09; 2. 升级master节点 3. 升级worker节点 4. 部署containerd 1. 部署cri-docker &#xff08;所有集群节点&#xff09; k8s从1.24版本开始移除了dockershim&#xff0c;所以需要安装cri-docker插件才能使用docker …

MySQL6:索引使用原则,联合索引,联合主键/复合主键,覆盖索引、什么是回表?索引条件下推,索引的创建与使用,索引的创建与使用,索引失效

MySQL6&#xff1a;索引使用原则&#xff0c;联合索引&#xff0c;联合主键/复合主键&#xff0c;覆盖索引、什么是回表&#xff1f;索引条件下推&#xff0c;索引的创建与使用&#xff0c;索引的创建与使用&#xff0c;索引失效 索引使用原则列的离散(sdn)度 联合索引创建联合…

Harbor私有镜像仓库搭建

本文基于&#xff1a;https://zhuanlan.zhihu.com/p/143779176 1.环境准备 IP&#xff1a;192.168.10.136/24 操作系统:centos7 2.安装Docker、Docker-compose 2.1安装Docker-CE $ wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.re…

数据库简史:多主数据库架构的由来和华为参天引擎的机遇

注&#xff1a;本文发表后&#xff0c;收到了很多后台反馈&#xff0c;其中关于大型机的早期成就不容省略。微调重发本文&#xff0c;纯属个人观点&#xff0c;错谬之处&#xff0c;仍然期待指正。 2023年10月13日&#xff0c;在北京举办的“2023金融业数据库技术大会"上&…

redis6.0源码分析:跳表skiplist

文章目录 前言什么是跳表跳表&#xff08;redis实现&#xff09;的空间复杂度相关定义 跳表&#xff08;redis实现&#xff09;相关操作创建跳表插入节点查找节点删除节点 前言 太长不看版 跳跃表是有序集合zset的底层实现之一&#xff0c; 除此之外它在 Redis 中没有其他应用。…

电力巡检/电力抢修行业解决方案:AI+视频技术助力解决巡检监管难题

一、行业背景 随着国民经济的蓬勃发展&#xff0c;工业用电和居民用电需求迅速增加&#xff0c;电厂、变电站、输电线路高负荷运转&#xff0c;一旦某个节点发生故障&#xff0c;对生产、生活造成巨大的影响。目前电力行业生产现场人员、设备较多&#xff0c;而生产监督员有限…

基于vue小红书平台用户数据分析与可视化

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…

【马蹄集】—— 搜索专题

搜索专题 目录 MT2238 数的增殖MT2239 二维矩阵中的最长下降序列MT2240 传染病MT2241 循环空间BD202303 第五维度 MT2238 数的增殖 难度&#xff1a;黄金    时间限制&#xff1a;1秒    占用内存&#xff1a;128M 题目描述 给定一个数 n ( n < 1000 ) n (n<1000) n…

Java I/O (输入/输出)

1.流的概念 流是一种有序的数据序列&#xff0c;根据操作类型&#xff0c;可以分为输入流和输出流两种。I/O流&#xff08;输入输出&#xff09;提供了一条通道程序&#xff0c;可以使用这条通道把源中的字节序列送到目的地。 1.1 输入流&#xff1a; 程序从指向源的输入流中读…

目标检测YOLO实战应用案例100讲-高速铁路供电安全检测监测系统图像智能识别(中)

目录 2.2.2卷积神经网络基本传播方式 2.3常用目标检测算法 2.3.1双阶段目标检测算法

51单片机汽车胎压大气气压测量仪仿真设计_数码管显示(代码+仿真+设计报告+讲解)

51单片机汽车胎压大气气压测量仪仿真设计_数码管显示 (代码仿真设计报告讲解) 仿真原版本&#xff1a;proteus 7.8 程序编译器&#xff1a;keil 4/keil 5 编程语言&#xff1a;C语言 设计编号&#xff1a;S0018 目录 51单片机汽车胎压大气气压测量仪仿真设计_数码管显示功…

技术分享| anyRTC低延时直播优化

直播系统就是把活动现场的音频或视频信号经数字压缩后&#xff0c;传送到直播多媒体服务器(CDN)上&#xff0c;在互联网上供广大网友或授权特定人群收听或收看。而随着技术的日益更新&#xff0c;人民对于直播的互动性&#xff0c;实时性要求更高了&#xff0c;传统的直播少则几…