学习网站建设有前景没浙江住房和建设网站首页

news/2025/10/4 15:26:17/文章来源:
学习网站建设有前景没,浙江住房和建设网站首页,专业网站设计哪家好,南京做网站建设有哪些yaml语法学习 1、配置文件 SpringBoot使用一个全局的配置文件 #xff0c; 配置文件名称是固定的 application.properties 语法结构 #xff1a;keyvalue application.yml 语法结构 #xff1a;key#xff1a;空格 value 配置文件的作用#xff1a;修改SpringBoot自动…yaml语法学习 1、配置文件 SpringBoot使用一个全局的配置文件 配置文件名称是固定的 application.properties 语法结构 keyvalue application.yml 语法结构 key空格 value 配置文件的作用修改SpringBoot自动配置的默认值因为SpringBoot在底层都给我们自动配置好了比如我们可以在配置文件中修改Tomcat 默认启动的端口号 server:port: 8081SpringBoot内置属性查询官方文档地址 2、YAML/YML yaml概述 YAML是 “YAML Ain’t a Markup Language” YAML不是一种标记语言的递归缩写。在开发的这种语言时YAML 的意思其实是“Yet Another Markup Language”仍是一种标记语言 这种语言以数据作为中心而不是以标记语言为重点 以前的配置文件大多数都是使用xml来配置比如一个简单的端口配置我们来对比下yaml和xml 传统xml配置 serverport8081port /serveryaml配置 serverprot: 8080yaml基础语法 说明语法要求严格 空格不能省略 以缩进来控制层级关系只要是左边对齐的一列数据都是同一个层级的 属性和值的大小写都是十分敏感的 #号表示注释 字面量普通的值 [ 数字布尔值字符串 ] 字面量直接写在后面就可以 字符串默认不用加上双引号或者单引号k: v 注意 “ ” 双引号不会转义字符串里面的特殊字符 特殊字符会作为本身想表示的意思 比如 name: “kuang \n shen” 输出 kuang 换行 shen ‘’ 单引号会转义特殊字符 特殊字符最终会变成和普通字符一样输出 比如 name: ‘kuang \n shen’ 输出 kuang \n shen 对象、Map键值对 #对象、Map格式 k: v1:v2:在下一行来写对象的属性和值得关系注意缩进比如 student:name: limingage: 3行内写法 student: {name: qinjiang,age: 3}数组和对象数组 List、set 用 - 值表示数组中的一个元素,比如 #数组 pets:- cat- dog- pig #对象数组 users:- name: Tomage: 4- name: Jerryage: 5行内写法 #数组 pets: [cat,dog,pig] #对象数组 users[{name: Tom,age: 4},{name: Jerry,age: 5}]注入配置文件 yaml文件更强大的地方在于他可以给我们的实体类直接注入匹配值 yaml注入配置文件 在springboot项目中的resources目录下新建一个文件 application.yml 编写一个实体类 Dog package nuc.ss.pojo;Component //注册bean到容器中 public class Dog {private String name;private Integer age;//有参无参构造、get、set方法、toString()方法 }思考我们原来是如何给bean注入属性值的Value给狗狗类测试一下 Component //注册bean public class Dog {Value(阿黄)private String name;Value(18)private Integer age; }在SpringBoot的测试类下注入狗狗输出一下 SpringBootTest class Springboot02ConfigApplicationTests {Autowiredprivate Dog dog;Testvoid contextLoads() {System.out.println(dog);}} 结果成功输出Value注入成功这是我们原来的办法对吧。 我们在编写一个复杂一点的实体类Person 类 Component //注册bean到容器中 public class Person {private String name;private Integer age;private Boolean happy;private Date birth;private MapString,Object maps;private ListObject lists;private Dog dog;//有参无参构造、get、set方法、toString()方法 }我们来使用yaml配置的方式进行注入大家写的时候注意区别和优势我们编写一个yaml配置 person:name: limingage: 3happy: falsebirth: 2000/01/01maps: {k1: v1,k2: v2}lists:- code- girl- musicdog:name: 旺财age: 1我们刚才已经把person这个对象的所有值都写好了我们现在来注入到我们的类中 /* ConfigurationProperties作用 将配置文件中配置的每一个属性的值映射到这个组件中 告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定 参数 prefix “person” : 将配置文件中的person下面的所有属性一一对应 */ Component ConfigurationProperties(prefix person) public class Person {private String name;private Integer age;private Boolean happy;private Date birth;private MapString,Object maps;private ListObject lists;private Dog dog;//有参无参构造、get、set方法、toString()方法 } 确认以上配置都OK之后我们去测试类中测试一下 SpringBootTest class Springboot02ConfigApplicationTests {Autowiredprivate Person person;Testvoid contextLoads() {System.out.println(person);}} 结果所有值全部注入成功 加载指定的配置文件 PropertySource 加载指定的配置文件configurationProperties默认从全局配置文件中获取值 我们去在resources目录下新建一个person.properties文件 namekuangshen然后在我们的代码中指定加载person.properties文件 PropertySource(value classpath:person.properties) Component //注册bean public class Person {Value(${name})private String name;...... }再次输出测试一下指定配置文件绑定成功 配置文件占位符 配置文件还可以编写占位符生成随机数 person:name: liming${random.uuid}age: ${random.int}happy: falsebirth: 2020/07/13maps: {k1: v1,k2: v2}lists:- code- music- girldog:name: ${person.hell:hello}_旺财age: 3回顾properties配置 我们上面采用的yaml方法都是最简单的方式开发中最常用的也是springboot所推荐的那我们来唠唠其他的实现方式道理都是相同的写还是那样写配置文件除了yml还有我们之前常用的properties 我们没有讲我们来唠唠 【注意】properties配置文件在写中文的时候会有乱码 我们需要去IDEA中设置编码格式为UTF-8settings–FileEncodings 中配置 对比小结 Value这个使用起来并不友好我们需要为每个属性单独注解赋值比较麻烦我们来看个功能对比图 ConfigurationPropertiesValue功能批量注入配置文件中的属性一个个指定松散绑定支持不支持SpEL不支持支持JSR303数据校验支持不支持复杂类型封装支持不支持 ConfigurationProperties只需要写一次即可 Value则需要每个字段都添加 松散绑定这个什么意思呢? 比如我的yml中写的last-name这个和lastName是一样的 - 后面跟着的字母默认是大写的。这就是松散绑定。 JSR303数据校验 这个就是我们可以在字段是增加一层过滤器验证 可以保证数据的合法性 复杂类型封装yml中可以封装对象 使用value就不支持 结论 配置yml和配置properties都可以获取到值 强烈推荐 yml 如果我们在某个业务中只需要获取配置文件中的某个值可以使用一下 value 如果说我们专门编写了一个JavaBean来和配置文件进行一一映射就直接configurationProperties不要犹豫

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

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

相关文章

题解:P5504 [JSOI2011] 柠檬

题目: 下面给个经典的 DP 式子不多说了: \[f_i=f_j+s_iqz^2(s_i,i)+s_iqz^2(s_{j+1},j)-2s_iqz(s_i,i)qz(s_{j+1},j),s_{j+1}=s_i \]单调栈太阴了!下面有个 hack: 11 2 10 2 2 10 2 2 10 2 2 2 ans:128众所周知 \…

Thymeleaf教程

一 Thymeleaf是什么 Thymeleaf 是一款现代服务器端 Java 模板引擎,专为 Web 开发设计,尤其适合与 Spring Boot 框架搭配使用。它的核心目标是实现 “自然模板”(Natural Templates)—— 即模板文件本身可直接作为纯…

商务网站建设的流程图专注新乡网站建设

1. 聚量推客: “聚量推客”汇聚了众多市场上有的和没有的地推网推拉新接单项目,目前比较火热,我们做地推和网推从业者如果长期在这行业去做推广可以使用这个平台,价格高数据也好,大部分拉新项目也都是官签一手资源 一…

VMware虚拟机设置中处理器数量和内核内存再次探讨

VMware虚拟机设置中处理器数量和内核内存再次探讨, 如何设置性能较好.设置内核数量 1*8 根据VMWARE虚拟机的CPU分配(VMWARE14):处理器数量、核心数量分配验证 - imxiangzi - 博客园 VMware Workstation CPU如何设置…

VMware中Ubuntu迁移(复制)后进入紧急模式You are in emergency mode.

解决了VMware虚拟机迁移后报错You are in emergency mode.在复制或迁移虚拟机后, Ubuntu进入紧急模式, 可以看见Error -107 cannot open Connection 这是共享文件夹功能被禁用导致的! 开启后输入reboot -f重启即可. 解…

2025年全国大学生电子设计竞赛A题:能量回馈的变流器负载试验装置(国一方案分享+代码工程+仿真) - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

太简单了!原来PS在线抠图可以这么玩,背景分离无压力

你是不是总被“抠图”困扰?想给图片换背景,却觉得下载安装Photoshop太费事?放心,这篇教程就是为你准备的!今天我来手把手教你用在线PS抠图工具,无需安装、打开网页就能轻松搞定背景分离,就算是零基础新手,也能…

深入解析:【Leetcode】随笔

深入解析:【Leetcode】随笔pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco",…

DateStyle日期时间字符串序列化 - br

import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatterBuilder; import java.time.temporal.ChronoField;import static java.time.temporal.ChronoField.*;public class DataStyle …

如何用AI工具编写一个轻量化CRM系统(七):AI生成pytest测试脚本

如何用AI工具编写一个轻量化CRM系统(七):AI生成pytest测试脚本2025-10-04 15:12 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !im…

网站建设总结心得游戏运营备案官方网站

昨天一个客户要在RK3399 Linux开发板上面使用身份证读卡器,由于没有客户的开发板,故只能用本机ubuntu虚拟机来交叉编译,用客户发过来的交叉编译工具,已经编译好libusb然后编译libdonsee.so的时候提示找不到libusb,报错…

实用指南:Linux驱动之V4L2

实用指南:Linux驱动之V4L2pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", …

湖北省建设人力资源网站网页制作素材教学

目录 一、代入排除法 例题 练习 二、数字特性 例题 练习 整除特性 例题 倍数特性 普通倍数 因子倍数 比例倍数 例题 练习 三、方程法 例题 练习 四、 不定方程(组) 例题 练习 一、代入排除法 例题 素数&#xff1a…

儿童与青少年数据安全及体育发展新方向会议

本次会议聚焦儿童和青少年数据安全保护,探讨人工智能对隐私的影响及体育文化在教育中的作用,涵盖数据保护、AI隐私风险等关键技术议题。会议信息 时间:2025年10月10日 地点:克拉科夫布罗尼斯瓦夫捷克体育学院 组织…

做网站运营需要具备什么能力建站公司都有哪些

在Flutter中,异步编程是非常重要的一部分,特别是在处理用户输入、网络请求或其他涉及时间的操作时。Flutter提供了一种强大的工具,称为Stream,用于简化异步编程的过程。 什么是 Stream? Stream是一种用于处理异步数据…

网站等保建设上海好的设计公司

SV-7042T 30W网络对讲广播一体音柱 一、描述 SV-7042T是深圳锐科达电子有限公司的一款壁挂式网络有源音柱,具有10/100M以太网接口,可将网络音源通过自带的功放和喇叭输出播放,其采用防水设计,功率可以从20W到40W。SV-7042T作为网…

Embarcadero Dev-C++ 6.3 中文乱码问题 - 教程

Embarcadero Dev-C++ 6.3 中文乱码问题 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &q…

2025.10.4——2绿

普及/提高- P9869 [NOIP2023] 三值逻辑 图上的问题,听完老师讲解还看了题解才理解。 P3847 [TJOI2007] 调整队形 刚开始用最长公共子序列做,结果是错的。 后来换成区间DP,就过了。

网站建设迁移方案优化官网咨询

支付开宝的本地生活来了!按支付宝财大气粗的做法,它一旦要推什么项目,那自然会在前期疯狂洒钱,以求通过这种模式快速占领市场。 所以,这次支付宝要推本地生活项目,这一贯做法自然得跟上,只是这…