《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

相关推荐
Pniubi16 分钟前
MySQL靠什么实现事务的?事务隔离级别有哪些?
java·数据库·mysql
一条Go33 分钟前
OnCall 时段路由:跨午夜、左闭右开与「Local 不是时区」
后端·架构·github
Moment37 分钟前
不会后期的我,发现了一个开源胶片神器😍😍😍
前端·后端·开源
数据库小学妹43 分钟前
pgbouncer 事务池:prepared statement、临时表与会话状态
数据库·后端·postgresql
松仔log1 小时前
Kotlin中级——callbackFlow
java·前端·kotlin
三小河1 小时前
SWC 凭什么比 Babel 快 ?项目优化迁移踩坑记录
前端·后端
鶴哥只手遮天2 小时前
《Redis 8.10.3 深度剖析》系列 ·第 17 章. 一个迟到十六年的类型
redis·后端·开源
知守观2 小时前
同一个团队两套分包:DDD 四层落地后,domain 层最大的类还是 5885 行
java·后端·领域驱动设计
文丑颜不良啊2 小时前
LeetCode2541~2560题目解析
java·leetcode
Anymous2 小时前
我手写的 Redis 锁,输给了 10 秒的 TTL
后端·架构