首页 » Web前端 » ymlphp技巧_Net轨范员讲JavaSpringBoot系列Yml与JSONXML的差异

ymlphp技巧_Net轨范员讲JavaSpringBoot系列Yml与JSONXML的差异

访客 2024-11-04 0

扫一扫用手机浏览

文章目录 [+]

XML

什么是XML?

ymlphp技巧_Net轨范员讲JavaSpringBoot系列Yml与JSONXML的差异

<?xml version="1.0" encoding="utf-8" ?><note> <name>老程的自习社</name> <weburl>https://www.toutiao.com/c/user/70114154003/#mid=1659479667793931</weburl></note>XML是被设计用来传输和存储数据的;XML是可扩展标记措辞(Extensible Markup Language)XML利用标记措辞,类似HMTL,但又所不同,HTML是用来现实数据的XML的设计宗旨是传输数据,而非现实数据XML的标签没有被预定义,意味着,可以自由发挥XML是一种更具有自我描述性;XML是W3C的推举标准

用场

ymlphp技巧_Net轨范员讲JavaSpringBoot系列Yml与JSONXML的差异
(图片来自网络侵删)
XML把数据与HMTL分离XML简化数据共享XML简化数据共享XML跨平台XML是数据更有应,由于它独立于硬件、软件以及运用程序,通过XML,数据可以供应各种阅读设备利用(平板、语音设备、新闻阅读器)等等

缺陷

比专业的DB软件占用更多的空间有点繁芜,解析要写N多的方法短缺安全保护,数据随意马虎被污染格式转换的问题

Json

JSON

Json(JavaScript Object Notation)一种轻量级的数据交流格式,已与编写和阅读,也随意马虎及其解析,随着前后真个分离技能普遍的运用,JSON的浸染越来越大;

{ "data":{ "name":"老程的自习社", "url":"https://www.toutiao.com/c/user/70114154003/#mid=1659479667793931" }}

Json层级

特性

键值对的无序凑集值得有序列表

YML

YAML (YAML Ain't a Markup Language)不是一种标记措辞,常日以.yml为后缀的文件,一种专门用来写配置文件的措辞。
可用于如: Java,C/C++, Ruby, Python, Perl, C#, PHP等。

优点

易于阅读,和JSON,XML一样;YML数据在编程措辞之间是可以移植的,JSON和XML也一样;YML支持单程处理;YML具有表现力和可扩展性;

toudiao: name: 老程的自习社 url: https://www.toutiao.com/c/user/70114154003/#mid=1659479667793931

yml的约定

约定

K:V(key:value)键值对, 冒号后面必须有一个空格利用空格的缩进标识层级的管理,一定要左对齐,空格数目不主要大小写明显疏松表示,驼峰和其他的在YML中都是可以自动映射,Laocheng,laocheng,lao-cheng都是可以滴

键值关系:普通点,int、string、bool 、datetime,工具、array、list、set....都是可以滴

字符串转义符:

“\N”:\N输出成换行

‘\N’:\N输出\N’

N种写法:行内写法,正规写法,不多先容,百度太多了

在JAVASpringBoot中溜一下代码

在idea中以.YML结尾的文件,输入

toudiao: name: 老程的自习社 url: https://www.toutiao.com/c/user/70114154003/#mid=1659479667793931

在pom.xml中引入

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency>

创建laocheng.class

package com.kevin.demo;import org.springframework.boot.context.properties.ConfigurationProperties;/将配置文件的每一个属性的值,映射到组件中 @ConfigurationProperties 见告springboot将本类中的所有属性和配置文件中的干系配置进行绑定 @prefix标注 /@ConfigurationProperties(prefix="toudiao")public class laocheng { public String getName() { return name; } public void setName(String name) { this.name = name; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } private String name; private String url; @Override public String toString() { return "laocheng{" + "name='" + name + '\'' + ", url='" + url + '\'' + '}'; }}

导入测试依赖包

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <!--<scope>test</scope>--></dependency>

启动,输出结果

标签:

相关文章

QQ伪装黑客代码大全技术与风险警示

网络安全问题日益凸显。QQ作为一种流行的社交工具,成为了黑客攻击的主要目标之一。本文将针对QQ伪装黑客代码大全进行深入剖析,揭示其...

Web前端 2025-03-02 阅读1 评论0