SpringBoot面试题整理

SpringBoot常规的面试题整理如下:

一、SpringBoot的简单介绍

SpringBoot是用来简化Spring框架应用初始化搭建以及开发的全新框架,比如通过自动化配置省去了大量繁琐的配置文件。

二、SpringBoot的优点

  1. 快速创建独立运行的Spring项目与主流框架集成;
  2. 使用嵌入式的servlet容器,应用无需打包成war包;
  3. starters自动依赖与版本控制
  4. 大量的自动配置,简化开发,也可修改默认值
  5. 准生产环境的运行应用监控
  6. 与云计算的天然集成

三、Spring Boot的核心配置文件有哪几个?他们的区别是什么?

Spring Boot的核心配置文件是application和bootstrap配置文件。
application配置文件主要用于Spring Boot项目的自动化配置;
bootstrap配置文件有以下几个应用场景:
使用Spring Cloud Config配置中心时,可在bootstrap配置文件中增加连接到配置中心的配置属性来加载外部配置中心的配置信息;
少量固定的不能被覆盖的属性;
少量加密/解密的场景;

四、Spring Boot 的配置文件有哪几种格式?它们有什么区别?

.properties和.yml,它们的主要区别是书写格式不同。

//.properties
app.user.name = javastack
//.yml
app:
    user:
        name: javastack

五、Spring Boot的核心注解是哪个?它主要由哪几个注解组成?

Spring Boot的核心注解是@SpringBootApplication,它主要包含了以下3个注解:
@SpringBootConfiguration:组合了@Configuration注解,实现配置文件的功能。
@EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项,比如关闭数据源自动配置功能@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})。
@ComponentScan:Spring组件扫描。

六、开启Spring Boot特性有哪几种方式

1.继承spring-boot-starter-parent项目
2.导入spring-boot-dependencies项目依赖

七、SpringBoot中的Starters的理解

Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,可以通过它一站式的集成Spring及其余技术,而不需要四处查找示例代码和依赖包。比如如果想使用Spring JPA访问数据库,只需加入spring-boot-starter-data-jpa启动器依赖就能使用了。

八、如何在自定义端口上运行Spring Boot应用程序

为了在自定义端口上运行SpringBoot应用程序,可以在application.properties中指定端口server.port=9090

九、如何使用SpringBoot实现分页和排序

Spring Boot实现分页有两种方式,一种是通过Spring Data JPA将实现分页的org.springframework.data.domain.Pageable的实现类传给存储库的方法。另一种方法是pringboot+Mybatis+PageHelper 实现分页、排序。

十、如何统一处理Spring Boot的异常处理

Spring提供了一种使用ControllerAdvice处理异常的非常的方法,在代码中通过实现一个ControllerAdvice类,来处理控制器抛出的所有异常。

十一、Swagger和SpringBoot中的应用

Swagger广泛用于可视化API,使用Swagger UI为前端开发人员提供在线沙箱。Swagger是用于
生成RESTful Web服务的可视化表示的工具,规范和完整框架实现。它使文档能够以与服务器相同的速度更新,当通过Swagger正确定义时,消费者可以使用最少量的实现逻辑来理解远程服务并与其进行交互。因此,Swagger消除了调用服务时的猜测。

十二、SpringBoot如何实现多套不同环境配置

提供多套配置文件,如:

applcation.properties
application-dev.properties
application-test.properties
application-prod.properties
在application.properties中定义生效的环境如:
#测试环境
spring.profiles.active=test
  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值