在实际的开发之中,由于开发(dev)、测试(beta)、运行(product)的环境不同,有可能需要选择不同的配置文件。所以在SpringBoot里面充分的考虑到了此类问题,那么就专门提供有多个profile配置,但是对于多profile配置一定要区分出yml还是properties,这两种资源的配置是不同的.1. 基于properties实现profile的处理在使用properties配置文件的时候所有可以使用的profile配置项都要求在一个文件之中编写;

SpringBoot系列四:SpringBoot开发(改变环境属性、读取资源文件、Bean 配置、模版渲染、profile 配置)

spring:profiles:active: product
---
spring:messages:basename: i18n/Messages,i18n/Pagesprofiles: dev
server:port: 8080
---
spring:messages:basename: i18n/Messages,i18n/Pagesprofiles: beta
server:port: 9090
---
spring:messages:basename: i18n/Messages,i18n/Pagesprofiles: product
server:port: 80最初进行profile切换的处理可以通过maven的编译工具动态选择,但是在Spring里面可以方便的实现这种切换.2、随后可以将项目进行打包处理,在打包之后也可以动态切换profile配置;Run As -->  clean packagejava -jar bootfirst.jar
2、随后如果现在要使用默认的profile就正常执行:java -jar bootfirst.jar此时的所有的thymeleaf页面都保存在"src/main/templates"目录之中,而且所有的SpringBoot配置文件
(*.yml),这个文件也应该一起输出到jar文件里面,那么就需要配置一个资源的引用,修改"bootfirst"中的
pom.xml配置文件:难道以后每一次访问都需要重新打包吗? 也就是说为了方便用户的动态进行profile执行的处理参数:java -jar bootfirst.jar --spring.profiles.active=beta;
4、【趣味问题】现在当运行完成之后你会发现程序之中默认采用的图标是Spring的图标但是很多的公司应该去更换为自己的图标,所以这个时候可以单独准备出一个ico的配置文件,可以将这个配置文件拷贝到"src/main/static/images"目录之中,随后在页面之中进行引入:<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head><title>SpringBoot模板渲染</title><link rel="icon" type="image/x-icon" href="/images/favicon.ico" /><meta http-equiv="Content-Type" content="text/html;charse=UTF-8">
</head>
<body><p th:text="'官方网站:' + ${url}"><p th:text="'用户名:' + ${mid}">
</body>
</html>
5、在进行profile配置的时候特别需要注意一点,如果你使用的是application.properties配置,这样的配置处理过程是不一样的,也就是说如果你基于属性文件完成配置,那么就需要编写多个属性文件内容:【开发环境】application-dev.properties【测试环境】application-beta.properties【线上环境】application-product.propertiesapplication-dev.propertiesspring.messages.basename=i18n/Messages,i18n/Pages
server.port=8080application-beta.propertiesspring.messages.basename=i18n/Messages,i18n/Pages
server.port=9090application-product.propertiesspring.messages.basename=i18n/Messages,i18n/Pages
server.port=80
6、随后还是需要有一个公共的application.properties的公共的文件出现,用于指派可以使用的profile配置:application.propertiesspring.profiles.active=beta如果现在将开发程序打成*.jar文件的话, 也同样可以在执行的时候使用
"--spring.profiles.active=product"动态指派不同的profiles配置文件.

SpringBoot profile配置相关推荐

  1. SpringBoot中Profile配置和加载配置文件

    文章目录 一.多Profile的资源文件 二.profile激活 1.配置文件方式激活profile 2.命令行方式激活profile 三.@profile使用 写在前面: 我是「境里婆娑」.我还是从 ...

  2. SpringBoot内部配置:“application.properties配置”和”使用XML配置”,读取属性文件中的内容,日志配置,Profile配置(学习:SpringBoot实战)

    1 SpringBoot内部配置 1.1.修改端口和应用上下文 server.port=9090 server.context-path=/helloboot Spring Boot也可以使用yml进 ...

  3. springboot的profile配置

    Profile是Spring用来针对不同的环境对不同的配置提供支持的,全局Profile配置使用application-{profile}.properties 通过在application,prop ...

  4. SpringBoot中的Profile配置的使用

    场景 Profile是针对不同的环境对不同的配置提供支持的, 全局Profile配置使用application-*.properties 比如 application-prod.properties ...

  5. 【springboot】配置

    配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的: •application.properties •application.yml 配置文件的作用:修改SpringBoot自 ...

  6. Spring小知识——profile配置

    文章目录 引言 介绍 Spring配置步骤如下 第一步:编写三个环境的Spring配置文件如下 第二步:配置Spring的主配置文件 第三步:编写测试代码 第四步:报错原因分析 总结 引言 工作中我们 ...

  7. creo配置文件config选项详解_5年资深架构师重点聚焦:SpringBoot的配置详解+内嵌Servlet容器

    Spring Boot的配置详解 在本节中,我们将重点聚焦在Spring Boot的配置方面. 理解Spring Boot的自动配置 按照"约定大于配置"的原则,Spring Bo ...

  8. Profile配置和加载配置文件

    Profile配置 1.Profile是什么 很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据, ...

  9. 补习系列(10)-springboot 之配置读取

    目录 简介 一.配置样例 二.如何注入配置 1. 缺省配置文件 2. 使用注解 3. 启动参数 还有.. 三.如何读取配置 @Value 注解 Environment 接口 @Configuratio ...

最新文章

  1. High Performance之android高性能之路
  2. 《大话设计模式》读书笔记-第8章 工厂方法模式
  3. ORA-28056:Writing audit records to Windows Even...
  4. 20220208--CTF刷题记录--6道简单的MISC题目
  5. 电脑向linux服务器传输文件,windows如何通过ssh工具向linux服务器上传和下载文件?...
  6. ECCV 2020,一种灵活高效的权重生成网络框架
  7. 5.4 tensorflow2实现消除多重共线性、人均网络消费回归分析——python实战
  8. CALayer 新建
  9. 斯诺登:澳大利亚的监视政策比NSA还下流
  10. 在Mind+下使用Easy loT实现mqtt消息消息的通讯
  11. mysql中orderby用法_MySQL教程:OrderBy用法_MySQL
  12. JavaScript线条变形动画网页js特效
  13. 《遥远的救世主》遵守客观规律(七)——文化属性
  14. mysql获取最大天数_mysql如何查询两个日期之间最大的连续登录天数
  15. PWN入门(9)NX enabled,PIE enabled与返回LibC库
  16. UGC、元宇宙概念、与迷你世界玩法
  17. 解决报错Cannot connect to the Maven process. Try again later. If the problem persists, check the Maven
  18. UI/UE设计师修炼指南-CSDN公开课-专题视频课程
  19. [OHIF-Viewers]医疗数字阅片-医学影像-事件总线管理器
  20. 黑磷量子点/铂杂化介孔二氧化硅纳米颗粒/负载黑磷量子点红细胞膜纳米囊泡BPQD-EMNVs的应用

热门文章

  1. [转] Transformer图解
  2. 1_STM32cubeIDE_黑色主题修改图标,vscode代码模板制作,GPIO(通用输入输出)
  3. 崩溃!Win10 强制更新导致电脑无限重启
  4. Windows Server 2012 R2 WSUS-6:配置计算机组和客户端目标
  5. C#关于电脑DPI改动显示的问题
  6. LVS+Heartbeat+Ipvsadm+Ldirectord安装(四)
  7. 最近面试,笔试题中的一道sql题
  8. Asp.net上传文件限制,在大于5M的时候出现DNS解析错误,解决方法。
  9. 20080823-jsp中include指令与动作的不同
  10. 企业防火墙代替路由器_「防火墙技术连载」基础知识篇 1、什么是防火墙