springboot3 基础特性(1)

文章目录

  • 一、SpringApplication三种方式
    • 1.1 基础方式
    • 1.2.自定义 SpringApplication
    • 1.3、FluentBuilder API
  • 二、自定义Banner
  • 三、Profiles
    • 3.1 什么是 Profiles ?
    • 3.2 声明Profiles
    • 3.3 激活配置文件
      • 3.3.1 分组
      • 3.3.2 环境包含
      • 3.3.3 激活方式
      • 3.3.4 配置优先级

一、SpringApplication三种方式

1.1 基础方式


@SpringBootApplication
public class ShujufangwenApplication {public static void main(String[] args) {SpringApplication.run(ShujufangwenApplication.class, args);}}

1.2.自定义 SpringApplication

在这里插入图片描述

在这里插入代码片@SpringBootApplication
public class ShujufangwenApplication {public static void main(String[] args) {SpringApplication springApplication=new SpringApplication(ShujufangwenApplication.class);//这种方式我们可以设置spring应用的一个配置//但是 配置文件中的优先级是要大于此种方式的springApplication.setBannerMode(Banner.Mode.OFF);springApplication.run(args);}}

1.3、FluentBuilder API

也可以配置一些应用环境

@SpringBootApplication
public class ShujufangwenApplication {public static void main(String[] args) {new SpringApplicationBuilder().sources(ShujufangwenApplication.class).bannerMode(Banner.Mode.CONSOLE).run();}}

二、自定义Banner

在这里插入图片描述
推荐网站:Spring Boot banner 在线生成工具,制作下载英文 banner.txt,修改替换 banner.txt 文字实现自定义,个性化启动 banner-bootschool.net

可以看到 spring启动时 图标变了
在这里插入图片描述

三、Profiles

3.1 什么是 Profiles ?

应用所在的运行环境发生切换时,配置文件常常就需要随之修改。

Profile:——就是一组配置文件及组件的集合。

可以整个应用在不同的profile之间切换(设置活动profile),整个应用都将使用该profile对应的配置文件及组件。

——每个运行环境(开发、测试、上线)都配置成一个对应profile,这样以后只要修改一下活动profile,应用就可以轻易地在不同的运行环境之间自由切换。

就是通过 配置的 profile 快速切换开发环境。

3.2 声明Profiles

我们可以用@Profile修饰Spring组件(@Component、@Configuration、@ConfigurationProperties),意味着该组件仅对特定profile有效。

在配置文件中添加profile名,意味着该配置文件仅对特定profile生效。

在这里插入图片描述

什么环境都不激活的话就是默认环境生效。
在这里插入图片描述

如果一个组件上什么都不标的话,就代表不管什么环境激活,都会生效,但如果标了default,就代表只有激活默认环境才会生效,需要注意
在这里插入图片描述

3.3 激活配置文件

命名:在 Spring Boot 中,Profile 是通过配置文件来实现的。在不同的环境下,可以加载不同的配置文件,从而实现不同的配置逻辑。具体来说,Spring Boot 支持以下几种配置文件:

application.properties
application.yml
application-{profile}.properties
application-{profile}.yml
其中,application.properties 和 application.yml 是通用的配置文件,它们在所有的环境下都会被加载。而 application-{profile}.properties 和 application-{profile}.yml 则是根据不同的 Profile 来加载的配置文件。当应用程序启动时,Spring Boot 会根据当前的环境变量来决定加载哪个配置文件。例如,如果当前环境变量为 dev,则会加载 application-dev.properties 或 application-dev.yml 文件。

在这里插入图片描述

如果激活环境与基础配置application.properties中的冲突的话,激活环境的优先。

3.3.1 分组

在这里插入图片描述
可以给激活环境分组 来直接激活该组。

3.3.2 环境包含

注意
1.spring.profiles.active 和spring.profiles.default 只能用到 无 profile 的文件中,如果在application-dev.yaml中编写就是无效的

环境包含就是:不论哪个环境生效,该环境都会包含进去生效。
在这里插入图片描述

3.3.3 激活方式

1、在配置文件中 使用spring.profiles.active=
2、通过命令行 --spring.profiles.active=dev,hsqldb

3.3.4 配置优先级

总结:
命令行>配置文件>Springapplication编程式配置
config子目录>config目录
config>根目录
{profile}>application
包外>包内
在这里插入图片描述

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

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

相关文章

常用告警规则

Node_exporter告警规则 NodeCPUUsageHigh: yaml 复制代码 alert: NodeCPUUsageHigh expr: (100 - (avg by (instance) (rate(node_cpu_seconds_total{mode“idle”}[5m])) * 100)) > 80 for: 5m labels: severity: critical annotations: summary: “High CPU usage detec…

STM32单片机USART串口详解

文章目录 1. 通信接口概述 2. 串口通信 3. 硬件电路 4. 电平标准 5. 串口参数及时序 5.1 数据帧的组成 5.2 起始位 5.3 数据位 5.4 校验位 5.5 停止位 5.6 波特率 5.7 数据帧传输过程示例 6. 串口时序 7. USART概述 8. USART框图 9. USART基本结构 10. 数据帧…

力扣793. 阶乘函数后 K 个零

Problem: 793. 阶乘函数后 K 个零 文章目录 题目描述思路即解法复杂度Code 题目描述 思路即解法 1.根据题意可知即是要求取满足条件的n最小是多少,最大是多少,最大值和最小值一减,就可以算出来有多少个n满足条件了。 2.由于题目中的阶乘存在单…

乡村养老服务管理系统的设计

管理员账户功能包括:系统首页,个人中心,医疗人员管理,乡村志愿者管理,文娱活动管理,活动报名管理,医疗保健管理 前台账户功能包括:系统首页,个人中心,文娱活…

确保数据一致性

目录 事务 ACID 属性 事务的作用 示例 隔离级别 事务管理的重要性 检查点 概述 检查点的好处 检查点的执行策略 检查点操作示例 并发控制 概述 并发控制技术 优点 缺点 适用场景 在数据库管理系统中,保持数据一致性至关重要。即使在系统故障或并发…

简单记录一下命名规则

简单记录一下命名规则 1. 记录一下 在编程中,命名规则(也称为命名约定)是非常重要的,它可以帮助我们编写出更易于理解和维护的代码。一直记不住到底有哪些,稍微记一下! 以下是一些常见的命名规则&#xf…

软件推荐 caj2pdf

## 推荐内容 用 zotero 管理文献时,不能处理知网 caj 格时,有大佬做了相应的工作并开源了。 今天推荐这两个 GitHub 项目 https://github.com/caj2pdf/caj2pdfhttps://github.com/ElonH/caj2pdf_gui 一是 python 做的 caj 2 pdf 源码,二是结…

005-OSPF基本配置

OSPF基本配置 OSPF (Open Shortest Path First) 是一种链路状态路由协议,它属于内部网关协议(IGP)类别,用于在自治系统(AS)内部路由 IP 数据包。OSPF 通过使用 Dijkstra 算法计算最短路径树来确定到达每个…

Linux之旅: 基础知识点的终极指南

文章目录 1、Linux的目录结构2、ls命令3、管理文件和目录4、linux命令使用细节和技巧5、权限管理基本命令6、搜索命令7、管道符与重定向8、压缩和解压命令9、用户及vim编辑器10、用户和用户组管理一、Linux系统用户账号的基本管理二、Linux系统用户组的管理 1、Linux的目录结构…

【CSS in Depth2精译】1.1.2 行内样式~1.1.3 选择器的优先级

文章目录 1.1.2 行内样式1.1.3 选择器的优先级1.1.3.1 优先级的写法1.1.3.2 关于优先级的思考 1.1.2 行内样式 如果无法通过样式表来源规则解决样式冲突,浏览器则会考察它们是否通过 行内样式 作用于该元素。当使用 HTML 的 style 属性声明样式时,该样式…

js-promise、async/await

promise,简单就就是回调的一种简化了回调地狱(如果多个调用是异步并且有结果依赖,那么就需要写成回调)。 async/await,需要成对使用,是对promise的更高级的抽象, 比如 runAsync1() .then(fun…

Win32编程:第一个窗口程序(Part.1)

Win32系统编程是指在Windows操作系统上使用Win32 API进行软件开发的过程;Win32 API是Windows操作系统提供的应用程序接口,允许程序与操作系统进行交互,实现各种功能。 以下是Win32系统编程的基本概念和步骤: 环境准备 开发工具&…

[python学习]--模块管理

在Python中,模块管理是非常重要的,因为它允许你将代码组织成可重用的单元,这些单元可以在其他Python脚本或项目中导入和使用。Python的模块管理包括创建模块、导入模块、使用包(packages)来组织模块,以及处…

element-plus的form表单组件之checkbox组件

单个checkbox 绑定的响应式的值类型为bool类型,同一个组的checkbox多选其值对应值的数组,类型根据checkbox的value值而来。 label只用来显示具体的值,根据value属性来设置。 element-plus的checkbox提供多种特性。 如单选,多选…

关机充电动画:流程与定制

关机充电动画:流程与定制 基于MTK平台Android 11分析 生成logo.bin 关机充电动画是由一系列的bmp图片组成的,这些图片资源存在于vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo目录下(当然不仅保护关机充电动画&#xff0c…

【软件工程】【22.10】p2

关键字: 软件开发基本途径、初始需求发现技术、UML表达事物之间关系、RUP需求获取基本步骤、项目过程建立涉及工作、项目规划过程域的意图和专用目标 判定表、分支覆盖、条件覆盖 三、简答 四、应用 这里条件覆盖有待商榷

Angular 2 数据显示

Angular 2 数据显示 Angular 2 是一个由 Google 维护的开源前端 web 框架,用于构建单页应用程序(SPA)。它以其高效的数据绑定、组件化架构和强大的依赖注入功能而受到开发者的青睐。在 Angular 2 应用程序中,数据显示是核心功能之一,它允许开发者轻松地将数据从组件传递到…

Gone框架介绍28 - 使用goner.IsDefault 将Goner设置为接口的默认实现

gone是可以高效开发Web服务的Golang依赖注入框架 github地址:https://github.com/gone-io/gone 文档地址:https://goner.fun/zh/ 文章目录 使用goner.IsDefault(...)将Goner设置为接口的默认实现从内置组件goner/logrus的构造函数讲起按类型注入的歧义性…

分布式注册中心如何保证数据一致性

分布式注册中心保证数据一致性主要依赖于一些核心的设计原则、技术和策略。以下是一些关键的方法和步骤: 1、使用分布式协调服务 如ZooKeeper、Etcd等,这些服务提供了分布式锁、分布式配置管理等功能,非常适合作为注册中心的数据存储。它们…

Python uWSGI 安装配置

Python uWSGI 安装配置 1. 引言 uWSGI是一个高性能的HTTP服务器,它实现了WSGI、uwsgi和HTTP等协议。它是用C编写的,旨在提供高性能和低资源消耗的Web服务。uWSGI广泛应用于Python Web应用程序,如Django、Flask等。本文将介绍如何在Python环境中安装和配置uWSGI。 2. 安装…