《Spring Boot从入门到实战》第三章习题答案

3.7 本章练习

1) 使用IDEA手动创建一个Spring Boot项目,修改系统的默认端口号和系统默认的图标(Icon)。

答案:

在application.properties默认端口号

复制代码
server.port=8081

系统默认的图标application.properties

复制代码
spring.banner.location=/banner.txt
application.version=1.0.0.0
application.formatted-version=v1.0.0.0
spring-boot.version=2.1.2.RELEASE
spring-boot.formatted-version=v2.1.2.RELEASE
application.title=My APP

banner.txt:

复制代码
${AnsiColor.BRIGHT_YELLOW}
 _   _      _ _         __        __         _     _ _
| | | | ___| | | ___    \ \      / /__  _ __| | __| | |
| |_| |/ _ \ | |/ _ \    \ \ /\ / / _ \| '__| |/ _` | |
|  _  |  __/ | | (_) |    \ V  V / (_) | |  | | (_| |_|
|_| |_|\___|_|_|\___( )    \_/\_/ \___/|_|  |_|\__,_(_)
                   |/

${AnsiColor.BRIGHT_RED}
Application Name: ${application.title}
Application Version: ${application.formatted-version}
Spring Boot Version: ${spring-boot.formatted-version}

运行截图;

  1. 实现系统多环境配置,让开发环境和测试环境连接到不同的数据库。

答案:

创建多环境配置文件时,需要遵循Spring Boot允许的命名约定来命名,格式为application-{profile}.properties,其中{profile}为对应的环境标识。在项目resources目录下分别创建application-dev.properties、application-test.properties和application-prod.properties三个配置文件,对应开发环境、测试环境和生产环境。

根据应用系统中常见的三个运行环境拆分成了多个不同的配置文件,分别独立配置上面各运行环境的配置项,具体如下:

application.properties:为项目主配置文件,包含项目所需的所有公共配置。

application-dev.properties:为开发环境配置文件,包含各项目所需的单独配置。

application-test.properties:为测试环境配置文件。

application-prod.properties:为生产环境配置文件。

多环境的切换 指定项目的启动环境有以下三种方式:

1.配置文件指定项目指定环境

spring boot支持通过spring.profiles.active配置项目启动环境,在application.properties配置文件中增加如下配置项指定对应的环境目录:

spring.profiles.active=dev

  1. IDEA编译器指定项目启动环境
  1. 命令行启动指定项目环境

在命令行通过java -jar xxx.jar --spring.profiles.active=dev

相关推荐
大飞哥~BigFei1 小时前
RabbitMq消费延迟衰减重试实现思路
java·分布式·rabbitmq
鹿衔`1 小时前
Flask入门
后端·python·flask
有趣的野鸭1 小时前
JAVA课程十一次实验课程主要知识点示例
java·前端·数据库
q***07143 小时前
Spring Boot 多数据源解决方案:dynamic-datasource-spring-boot-starter 的奥秘(上)
java·spring boot·后端
郝开3 小时前
Spring Boot 2.7.18(最终 2.x 系列版本)8 - 日志:Log4j2 基本概念;Log4j2 多环境日志配置策略
spring boot·单元测试·log4j
q***49863 小时前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端
沐浴露z6 小时前
【微服务】基本概念介绍
java·微服务
Z3r4y6 小时前
【代码审计】RuoYi-4.7.3&4.7.8 定时任务RCE 漏洞分析
java·web安全·ruoyi·代码审计
Kuo-Teng7 小时前
LeetCode 160: Intersection of Two Linked Lists
java·算法·leetcode·职场和发展