全部学科
Python全栈
python
NodeJS全栈
nodejs

核心配置文件使用专项测试

12 题 25 分钟 难度:★

考察知识点

  • application.properties/yml配置语法
  • 配置属性读取方式
  • 多环境配置管理
  • 配置文件优先级
💡 参考答案在文末
判断题
1

在application.yml中,缩进必须使用空格而不能使用Tab键,因为Tab字符在YAML中会导致解析错误。

A

B

2

当同时存在application.yml和application-dev.yml配置文件时,application-dev.yml中的配置会覆盖application.yml中相同配置项的值。

A

B

单选题
3

SpringBoot默认的配置文件名称是什么?它应该放在哪个目录下?

A

config.xml,放在src/main/resources目录

B

application.properties或application.yml,放在src/main/resources目录

C

spring.properties,放在项目根目录

D

boot.xml,放在WEB-INF目录

4

在application.yml配置文件中,以下哪种写法是正确的?

A

server.port: 8080(使用冒号分隔)

B

server.port=8080(使用等号分隔)

C

server.port 8080(使用空格分隔)

D

server: port: 8080(层级使用冒号)

5

在SpringBoot中创建开发环境和生产环境的配置文件,命名规则是什么?

A

application-dev.properties 和 application-prod.properties

B

dev-application.properties 和 prod-application.properties

C

application.properties.dev 和 application.properties.prod

D

config-dev.xml 和 config-prod.xml

6

SpringBoot项目有application-dev.yml和application-prod.yml两个环境配置文件。如何指定启动时使用生产环境配置?

A

在application.yml中设置spring.profiles.active=prod

B

启动时添加参数 --spring.profiles.active=prod

C

设置环境变量 SPRING_PROFILES_ACTIVE=prod

D

以上三种方式都可以

7

在SpringBoot中,如何将application.yml中定义的自定义属性注入到Java类的字段中?

A

使用@Autowired注解自动注入

B

使用@Value注解绑定配置值

C

使用@Configuration注解声明配置类

D

使用@Bean注解创建配置对象

8

当需要注入大量相关配置属性时,使用@ConfigurationProperties注解相比@Value有什么优势?

A

@ConfigurationProperties只能注入字符串类型,@Value可以注入任意类型

B

@ConfigurationProperties可以将相关属性绑定到一个类,支持类型转换和校验

C

@ConfigurationProperties需要逐个字段写@Value,更繁琐

D

@ConfigurationProperties不支持默认值,必须配置完整

9

在使用@Value注入配置值时,以下哪种方式是正确的?

A

可以直接在静态字段上使用@Value注入

B

需要通过setter方法注入静态字段,不能直接在静态字段上使用@Value

C

@Value只能在构造方法中使用

D

@Value注入的值可以在类实例化之前获取

多选题
10

SpringBoot多环境配置适用于以下哪些场景?

A

开发环境使用本地数据库,生产环境使用远程数据库

B

开发环境开启详细日志,生产环境减少日志输出

C

开发环境禁用缓存便于调试,生产环境启用缓存提升性能

D

开发环境使用测试账号,生产环境使用正式账号

E

不同环境使用不同的第三方服务地址

F

同一配置文件中使用多个环境的所有配置

11

@Value注解支持以下哪些注入方式?

A

注入配置文件属性值:${myapp.name}

B

注入系统环境变量:${JAVA_HOME}

C

注入默认值:${myapp.name:DefaultApp}

D

注入SpEL表达式:#{systemProperties['user.name']}

E

注入其他Bean的属性:#{userBean.name}

F

注入静态常量:#{T(java.lang.Math).PI}

填空题
12

在SpringBoot中使用@Value注解注入配置值:

  1. 引用配置属性的语法是:____________
  2. 设置默认值的语法是:____________
  3. 使用SpEL表达式的语法是:____________
参考答案
1.正确 2.正确 3.B 4.D 5.A 6.D 7.B 8.B 9.B 10.A; B; C; D; E 11.A; B; C; D; E; F 12.${property.name};${property.name:default};#{expression}
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一套试卷 底层启动源码剖析专项测试
下一套试卷 → 线上性能监控与压测优化专项测试
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码