有什么做衣服的网站好/分类信息网
配置文件
SpringBoot使用一个全局的配置文件,配置文件名是固定的;
-
application.properties
-
application.yml
配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;
YAML(YAML Ain't Markup Language)
YAML A Markup Language:是一个标记语言
YAML isn't Markup Language:不是一个标记语言;
标记语言:
以前的配置文件;大多都使用的是 xxxx.xml文件;
YAML:以数据为中心,比json、xml等更适合做配置文件;
YAML:配置例子
server:
port: 8081
XML:
<server><port>8081</port> </server>
YAML语法:
基本语法
k:(空格)v:表示一对键值对(空格必须有);
以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的
server:port: 8081servlet:context-path: /config
属性和值也是大小写敏感;
server.port=8081
server.servlet.context-path=/config
值的写法
字面量
字面量:普通的值(数字,字符串,布尔)
k: v:字面直接来写;
字符串默认不用加上单引号或者双引号;
"":双引号;不会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思
name: "zhangsan \n lisi":输出;zhangsan 换行 lisi
'':单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据
name: ‘zhangsan \n lisi’:输出;zhangsan \n lisi
Map
k: v:在下一行来写对象的属性和值的关系;注意缩进
对象还是k: v的方式
friends:lastName: zhangsan age: 20
行内写法:
friends: {lastName: zhangsan,age: 18}
数组
数组(List、Set):
用- 值表示数组中的一个元素
pets:- cat- dog- pig
行内写法
pets: [cat,dog,pig]
配置文件值注入
方式一:@Value
方式二:@ConfigurationProperties
配置文件
person:lastName: jackage: 18boss: falsebirth: 2017/12/12maps: {k1: v1,k2: 12}lists:- lisi- zhaoliudog:name: 小狗age: 12
javaBean:
/**
* 将配置文件中配置的每一个属性的值,映射到这个组件中
* @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
* prefix = "person":配置文件中哪个下面的所有属性进行一一映射
*
* 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
*
*/
@Component
@ConfigurationProperties(prefix = "person")
public class Person {private String lastName;
private Integer age;
private Boolean boss;
private Date birth;private Map<String,Object> maps;
private List<Object> lists;
private Dog dog;
//省略get/set
}
案例一 (将配置文件中配置的每一个属性的值,映射到组件中)
创建springboot项目
创建person类
/*** 将配置文件中配置的每一个属性的值,映射到这个组件中* @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;* prefix = "person":配置文件中哪个下面的所有属性进行一一映射** 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;* @ConfigurationProperties(prefix = "person")默认从全局配置文件中获取值;**/ @Data//自动getset方法 @Data @ConfigurationProperties(prefix = "zking.person" )//对比@value方法要方便,不用一个个写(dog类为value方法绑定) public class Person {private String lastName;private Integer age;private Boolean boss;private Date birth;private Map<String,Object> maps;private List<Object> lists; }
(让类中的值来源于application.yml配置文件)
@Data @Component public class Dog {//@Value方式一:占位符@Value("${zking.dog.name}")//绑定属性private String name;//@Value方式二:spel表达式@Value("#{3+1}")private Integer age; }
resource下创建application.yml配置文件
zking:dog:name: 五彩age: 2person:lastName: xxx #普通字符串写法age: 18boss: truebirth: 2006/10/15maps:addr: beijingtel: 123456lists:- cat- dog- pig
测试(配置文件给类绑定属性):
@Autowired Dog dog; /*** 测试 @Value*/ @Test public void testValue(){System.out.println(dog);//绑定了默认值 }
辅助编写配置文件工具
(我们可以导入配置文件处理器,以后编写配置就有提示了 )
<!--导入配置文件处理器,配置文件进行绑定就会有提示-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
数据校验
<!--数据校验-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
使用:
创建类
@Component @Data @ConfigurationProperties(prefix = "zking.person" ) @Validated//启用校验 //@PropertySource("classpath:person.properties")//指定加载属性文件 //@ConfigurationProperties("person")// 配置属性前缀为 person。 public class Person {@Email//email校验格式private String lastName;private Integer age;private Boolean boss;private Date birth;private Map<String,Object> maps;private List<Object> lists;}
给值用的是配置类
创建application.yml
server:port: 8080# 指定要启动的环境 spring:profiles:active: druid zking:dog:name: 五彩age: 2person:lastName: xxx手动阀@123.com #普通字符串写法age: 18boss: truebirth: 2006/10/15maps:addr: beijingtel: 123456lists:- cat- dog- pig
测试:
@Test public void testConfigurationProperties(){System.out.println(person); }
方式三:person.properties给值
创建person.properties
person.lastName=jack@163.com
person.age=18
person.boss=false
person.birth=2017/12/12
person.maps.k1=v1
person.maps.k2=v2
person.lists=lisi,zhaoliu
绑定方式
@Component @Data //@ConfigurationProperties(prefix = "zking.person" )//yml文件绑定 @PropertySource("classpath:person.properties")//指定加载文件 public class Person {@Emailprivate String lastName;private Integer age;private Boolean boss;private Date birth;private Map<String,Object> maps;private List<Object> lists;}
application.yml
- 语法:YAML(YAML Ain't Markup Language)是一种人类可读的数据序列化标准,它使用缩进和换行来表示数据结构。
- 结构:YAML文件使用键值对的形式,并且支持嵌套结构,这使得配置更加清晰和易于管理。
person.properties
- 语法:Properties文件使用简单的键值对格式,键和值之间用等号(=)分隔。
- 结构:Properties文件不支持嵌套结构,所有的配置都是平铺的。如果需要表示层级关系,通常会使用点(.)来分隔键。
Profile
多Profile文件
我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml
默认使用application.properties的配置;
yml支持多文档块方式
server:
port: 8081
spring:
profiles:
active: prod#默认激活---
server:
port: 8083
spring:
config:
activate:
on-profile: dev
---server:
port: 8084
spring:
config:
activate:
on-profile: prod #指定激活哪个环境
激活指定profile
1、在配置文件中指定 spring.profiles.active=dev
可以是多个配置,中间使用逗号隔开
2、命令行(cmd):
java -jar spring-boot-02-config-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev;
可以直接在测试的时候,配置传入命令行参数
3、虚拟机参数;
-Dspring.profiles.active=dev
命令行方式 > Java系统属性方式 > 系统变量方式 > 配置文件方式
案例
创建配置文件application.yml、application-dev.yml、application-prod.yml
看这个:# 指定要启动的环境
server:port: 8080# 指定要启动的环境会覆盖默认8080这个配置 spring:profiles:active: dev zking:dog:name: 五彩age: 2person:lastName: xxx手动阀 #普通字符串写法age: 18boss: truebirth: 2006/10/15maps:addr: beijingtel: 123456lists:- cat- dog- pig
#dev开发环境 server:port: 8081
#生产环境 server:port: 8082
配置文件加载位置
springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件
–file:./config/
–file:./
–classpath:/config/
–classpath:/
优先级由高到底,高优先级的配置会覆盖低优先级的配置;
SpringBoot会从这四个位置全部加载主配置文件;互补配置;
==我们还可以通过spring.config.location来改变默认的配置文件位置==
项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置;指定配置文件和默认加载的这些配置文件共同起作用形成互补配置;
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --spring.config.location=G:/application.properties
相关文章:

spring-boot(绑定配置文件及应用)
配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的; application.properties application.yml 配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好; YAML&#x…...

Mac OS 搭建MySQL开发环境
Mac OS 搭建MySQL开发环境 文章目录 Mac OS 搭建MySQL开发环境一、安装Mysql:二、配置环境变量三、安装Navicat 本地环境: Mac OS Sequoia15.0.1(M3 Max) 目标状态: 下载安装Mysql,配置相关环境。 一、安装Mysql&…...

windows下安装python库wordCloud报错
换电脑安装wordcloud半天安装失败,记录一下遇到的坑,也给大家节省点时间。 方法1: 错误呢就是下面这个,说没c编译器,要不就去他给的地址上安装一下,我安装了一下好像没什么用,也没太敢勾选&am…...

Spring IOC 自动装配(注入)
注解⽅式注⼊ Bean 对于 bean 的注⼊,除了使⽤ xml 配置以外,可以使⽤注解配置。注解的配置,可以简化配置⽂件, 提⾼开发的速度,使程序看上去更简洁。对于注解的解释,Spring对于注解有专⻔的解释器&#…...

Go使用SIMD指令——以string转为整数为例
本文Go使用SIMD指令采用如下方式: C编写对应的程序clang编译成汇编c2goasm将上述生成的汇编转为go的汇编 准备工具 clang。直接使用apt-get install clang安装即可c2goasm。 go get -u github.com/minio/c2goasm来进行安装asm2plan9s。 go get -u github.com/min…...

分享资源合集
为了方便临时使用到的一些软件,提供百度网盘下载。 通过百度网盘分享的文件:WinHex 21.2 SR-2_x86_x64.exe 链接:https://pan.baidu.com/s/19RAnHl_VcKUcIKADU9z9Gw?pwd6666 提取码:6666 通过百度网盘分享的文件:Zi…...

C#/WinForm 鼠标穿透自定义区域截图(后续实现录屏)
效果 窗体截图录屏 git地址:https://gitee.com/feng-cai/screenshot-recording...

基于SpringBoot的“社区维修平台”的设计与实现(源码+数据库+文档+PPT)
基于SpringBoot的“社区维修平台”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 管理员登录页面 住户管理页面 社区公关管理页面 维…...

图书管理系统汇报
【1A536】图书管理系统汇报 项目介绍1.用户登录注册功能1. 1用户角色管理2.图书管理功能2.1 添加图书2.2 编辑图书2.3 删除图书 3.图书搜索和筛选3.1 图书搜索3.2 图书筛选 4.图书借阅、图书归还4.1 图书借阅4.2 图书归还 5.用户信息管理5.1上传头像5.2修改头像5.3 修改密码 项…...

【发版通知】FormMaking 表单设计器新版发布,赋能企业实现低代码开发!
FormMaking 介绍 FormMaking 是基于 Vue 的可视化表单设计器,赋能企业实现低代码开发模式;帮助开发者从传统枯燥的表单代码中解放出来,更多关注业务,快速提高效率,节省研发成本。目前已经在OA系统、考试系统、报表系统…...

计算机科学与技术-毕业设计选题推荐
基于特定技术的系统设计与实现 基于深度学习的图像识别系统设计与实现基于区块链的数据安全保护技术研究与实现基于云计算的大数据处理平台设计与开发基于物联网的智能家居系统设计与实现基于机器学习的推荐算法研究与实现 面向实际应用的需求分析与开发 智慧医疗信息系统设…...

《C++音频频谱分析:开启声音世界的神秘之门》
在数字音频的广阔领域中,频谱分析是一项强大而引人入胜的技术。它能够将无形的声音转化为可视化的数据,让我们深入了解音频的特征和结构。那么,在 C这个强大的编程语言中,我们又该如何实现对音频的频谱分析呢? 音频频…...

GitHub 上传项目保姆级教程
构建项目仓库 登录 GitHub 并进入主页。点击右上角的 New 按钮,进入创建新仓库页面。输入仓库名称和描述(可选),选择是否公开(Public)或私有(Private)。可以选择是否初始化仓库&…...

联想笔记本电脑睡眠后打开黑屏解决方法
下载联想机器睡眠无法唤醒修复工具 下载地址:https://tools.lenovo.com.cn/exeTools/detail/id/233/rid/6182522.html 使用完后重启电脑,问题解决。...

计算机网络:网络层 —— 路由选择与静态路由配置
文章目录 路由选择路由选择的基本概念路由选择算法路由选择策略 路由器的工作原理路由表静态路由配置默认路由特定主机路由 路由选择 路由选择(Routing)是网络层的一个关键功能,负责在源和目的地之间选择最佳路径,以确保数据包高…...

[LeetCode-55]基于贪心算法的跳跃游戏的求解(C语言版)
/* 题目出处:LeetCode 题目序号:55. 跳跃游戏 题目叙述:给你一个非负整数数组 nums ,你最初位于数组的第一个下标位置 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可…...

C# 将批量图片转为PDF文件
目录 功能实现 范例运行环境 关键代码 组件库引入 将批量图片转换为PDF 总结 功能实现 功能实现主要使用 iTextSharp 库实现,将指定目录下的有序的一组图片,组合生成指定文件名的PDF文件。 范例运行环境 操作系统: Windows Server…...

大模型面试题63题(1-11)
扫一扫,实时跟踪面试题(关注“算法狗”)就可以啦 1. 什么是大型语言模型(LLMs)以及它们的工作原理是什么? 大型语言模型(LLMs)是设计用来理解、处理和生成类似人类文本的高级人工智…...

【Flask】二、Flask 路由机制
目录 什么是路由? Flask中的路由 基本路由 动态路由 路由中的HTTP方法 路由函数返回 在Web开发中,路由是将URL映射到相应的处理函数的过程。Flask是一个轻量级的Web应用框架,提供了简单而强大的路由机制,使得开发者能够轻松…...

Java项目实战II基于Spring Boot的交通管理在线服务系统设计与实现(开发文档+数据库+源码)
目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 随着城市化…...

【PythonWeb开发】Flask-RESTful视图类基础知识
flask_restful 是一个扩展库,它为 Flask 提供了快速构建 RESTful API 的功能。使用 flask_restful 可以简化 RESTful API 的开发过程,减少样板代码,并且提供了一些高级特性,如 HTTP 方法的映射、资源路由的定义等。 在flask_restf…...

Kubernetes——part10-2 kubernetes 日志收集方案 EFK
一、EFK 1.1 EFK介绍 EFK为elasticsearch、fluentd、kibana的简称,本案例主要对kubernetes集群日志收集。 1.2 Fluentd介绍 fluentd是一款开源的日志收集工具,其于2016年11月8日被云原生计算基金会录取,并于2019年毕业。 Fluentd优势&…...

mockito+junit完成单元测试
一:单元测试的特点 配合断言使用(可以杜绝System.out)可以重复执行不依赖环境不会对数据产生影响spring的上下文环境不是必须的一般都需要配合mock类框架来实现 二:常用的mock类框架 mockito 官网:Mockito framew…...

基于web的便捷饭店点餐小程序的设计与实现(lw+演示+源码+运行)
摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对高校教师成果信息管理混乱,出错率高,信息安全…...

CUDA环境安装终极指南——Linux(其它系统也一样)
文章目录 前言检查驱动配置nvcc安装cudnn完活 前言 不用看其它文章了,这篇文章保你不踩任何坑,安装方法简单快速 检查驱动 检查驱动是否安装,输入以下命令 nvidia-smi如果驱动已经安装,则可跳过此步,否则ÿ…...

安卓开发之登录页面(跳转版)
目录 前言:基础夯实:效果展示:核心代码:网盘源码: 前言: 熟悉安卓开发的基础知识,了解,弹窗,两个页面进行跳转,页面的布局,按钮,文本…...

solidworks学习6吊环-20241030
solidworks学习6吊环 图 1 使用到的命名:拉伸曲面,旋转曲面,镜像实体,剪裁曲面, 前视基准面绘制 图 2 绘制旋转轴 图 3 旋转曲面 图 4 上视基准面绘制,标准圆边尺寸的时候需要按住shift键标注&#x…...

数据结构和算法-动态规划(3)-经典问题
动态规划常见问题 打家劫舍 题目 [力扣198] 198. 打家劫舍 - 力扣(LeetCode) 题目描述 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统&…...

Java算法-一维前缀和与差分
一、一维前缀和 ① 什么是一维前缀和? 📚 其实通过名字就能知道" 一维前缀和 "的意思: 通过一个一维数组"arr1"而创建的另一个一维数组"arr2","arr2"的每一个元素都是"arr1"…...

Elasticsearch 安装教程:驾驭数据海洋的星际导航仪
目录 一、准备工作1. ES的下载 二、安装步骤三、注意事项四、启动报错1. org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root2. max virtual memory areas vm.max_map_count [65530] is too low, increase to at l…...