1.Springboot配置细节

news2024/9/23 1:23:55

一、参考资料

13-SpringBoot配置-项目外部配置加载顺序_哔哩哔哩_bilibili

二、配置

2.1 配置文件

 注意变量后面是:,而不是等号=

 

 

 2.2 读取配置文件

2.2.1 @Value

比如配置文件application.properities中定义了一个name,其值为abc。

 代码里面只需按照如下方式获取:

  @Value("${Person.name}")
    private String name;
  1. 使用@Value方式获取配置文件的值,如果配置项的key不存在,也没有设置默认值,则程序直接报错

  2. 使用@Value方式默认值的设置方法:配置项的key后面加冒号然后写默认值如:${配置项的key:默认值}

  3. 使用@Value方式如果是配置文件里配置项太多,并且使用的地方过多的时候,维护和管理不太方便

2.2.2 Environment

使用很简单,直接使用spring的注解@Autowired引入即可

    @Autowired
    private Environment environment;


#然后通过如下方式获取
environment.getProperty("Person.name"));

2.2.3 @ConfigurationProperties自动填充法

 例如配置文件现在有个person类:

 使用代码如下:只需新建一个类,变量设置为配置文件下的那两个变量,然后他就会自动填充。

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
@ConfigurationProperties(prefix = "Person")  //前缀,使用配置文件中的Person下的变量
public class Person {

    private String name;
    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }


    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

2.3 profile

 2.4 内部配置加载顺序

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

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

相关文章

一、软件安装与配置

一、PyTorch环境软件安装与配置 1.安装anaconda参考 anaconda老版本下载方法(如何查看anaconda与python版本对应关系)及安装教程_breadth_的博客-CSDN博客_anaconda旧版本下载 2.在anconda下安装和激活pytorch环境 此步并没有下载pytorch 3.下载pyto…

云计算运营—03 KVM虚拟化技术方案介绍

KVM虚拟化技术方案介绍 1.背景介绍 KVM(Kernel-based Virtual Machine) 开源全虚拟化方案 支持体系结构 x86(32位,64位)、IA64、PowerPC、S390 依赖x86硬件支持:Intel VT-x/ AMD-V内核模块,使得linux内核成为hypervisor XEN架构 …

《B-树》

tips:B-树读成b树,并不是b减树 【一】基本搜索结构 种类数据格式时间复杂度顺序查找无要求O(N)二分查找有序O(log2N)二叉搜索树无要求O(N)二叉平衡树(AVL和红黑树)无要求,最后随机O(log2N)哈希无要求O(1)位图无要求O…

linux系统中SPI驱动框架的基本原理与实现

大家好,今天主要和大家聊一聊,如何使用linux系统中SPI驱动ICM-20608六轴传感器的操作。 目录 第一:linux系统下SPI驱动框架简介 第二:SPI设备驱动编写 第三:SPI设备和驱动匹配过程 第一:linux系统下SPI驱…

MySQL数据库高级面试题(1)

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java面试题…

CSDN年度征文 | 你好,2023

祝大家新年快乐~🧧🧧🧧⭐过去的2022⭐2022已成过去,2023慢步向我们走来。回首2022,这一年不是平凡的一年。这一年,有苦也有乐。冬奥会的成功举办、香港回归25周年、二十大胜利召开、航天任务圆满成功等等都…

设计 | 分享5个好用的PPT模板网站

第一PPT 这个老牌的模板网站了,全站都是免费下载,还是不错的 但是素材质量嘛,免费所以不太高。 第一PPT下载https://www.1ppt.com/ 模板狗 这个是最近发现的一个网站,其中内容比较精美。 而且不用开会员也能单独购买&#x…

【Android】APT

引言: 安卓中APT又叫Annotation Processing Tool,即注解处理器。Java中注解分为编译时注解和运行时注解,编译时注解无法通过反射的方式进行获取和处理,所以我们可以利用APT处理编译时注解。比如常见的三方库ButterKnife、ARouter…

mysql删除重复记录并且只保留一条

准备的测试表结构及数据 插入的数据中A,B,E存在重复数据,C没有重复记录 CREATE TABLE tab ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(20) DEFAULT NULL, PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT13 DEFAULT CHARSETutf8; -- --------------------…

使用root用户和普通用户完成分配任务案例 ansible(1)

目录 案例一: 控制主机和受控主机通过root用户通过免密验证方式远程控制受控主机实施对应任务。 案例二: 控制主机连接受控主机通过普通用户以免密验证远程控制受控主机实施特权指定操作。 案例一: 控制主机和受控主机通过root用户通过免…

<网络概述>——《计算机网络》

目录 1.网络基础 1.1 计算机网络背景 1.2 网络发展 1.3 软件分层 1.4 网络和操作系统的关系 1.5 局域网通信的原理 2. 网络协议 2.1 网络协议初识 2.1.1 协议分层 2.2 OSI七层模型 2.3 TCP/IP五层(或四层)模型 3. 网络传输基本流程 3.1 网络传输流程图 3.2 数据包…

密码技术扫盲,Part 3:认证

个人博客 密码技术扫盲,Part 1:对称加密密码技术扫盲,Part 2:非对称加密🎯 密码技术扫盲,Part 3:认证 除了加密,还有一类用法是对信息的认证,主要包括 4 个技术 单向散…

PostgreSQL JIT 实现query性能加速的一些补充

文章目录背景Executor 本身做的一些优化LLVM JIT 的优化本地以及全局优化执行 query 时的优化JIT调度优化 过程背景 之前介绍过一次 PostgreSQL JIT with LLVM 实现,因为有一些细节没有介绍得很清楚,需要额外做一些补充。 关于LLVM 的IR 以及 如何 用LL…

11.HTML颜色、HTML脚本、字符实体、URL

1.HTML颜色 1)HTML 颜色由红色、绿色、蓝色混合而成。 2)HTML 颜色由一个十六进制符号来定义,这个符号由红色、绿色和蓝色的值组成(RGB)。 3)每种颜色的最小值是0(十六进制:#00&…

性能优化系列之怎么让图片加载得更快?

文章の目录一、压缩png1、优势2、说明文档3、安装4、使用4.1、环境4.2、示例4.3、API4.4、还有一个第三库是对当前库的封装,叫jdf-png-native【版本1.1.0,环境同node-pngquant-native】,使用方法和node-pngquant-native差不多二、压缩jpg1、优…

分享68个PHP源码,总有一款适合您

链接:https://pan.baidu.com/s/1QB61EsIl70vXx1yrJkiesA?pwdbup1 提取码:bup1 PHP源码 分享68个PHP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下...,大家下载…

【树莓派不吃灰】IO篇① GPIO 开发环境

目录1. 前言1.1 4B GPIO引脚排列2. Python GPIO安装3. 基于C语言的wiringPi安装❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️❤️ 本篇创建记录 2023-01-01 ❤️❤️ 本篇更新记录 2023-01-01 ❤️🎉 欢迎关注 🔎点赞 &…

vivo 服务端监控体系建设实践

作者:vivo 互联网服务器团队- Chen Ningning 本文根据“2022 vivo开发者大会"现场演讲内容整理而成。 经过几年的平台建设,vivo监控平台产品矩阵日趋完善,在vivo终端庞大的用户群体下,承载业务运行的服务数量众多&#xff0c…

Modbus-RTU通讯协议中CRC校验

MODBUS协议中的CRC校验_RobotWoods的博客-CSDN博客_modbus crc 以下面这段收发数据为例: 发送的数据是工控机发送给plc的,他们的通信是modbus通信,前面的01。。。。。0f是实际使用的数据,具体意义可以查,后面的4位数87…

对模板类型推演的一个小Bug

在写vector的代码时遇到了这样一个错误 以下是代码书写内容以及我的测试代码 测试代码的目的就是想测试一下我写的vector构造方法 vector(size_t n, const T& val T()); 可是却发生了上述的报错 vector(size_t n, const T& val T()){// 法一&#xff1a…