SpringBoot

1、谈谈你对SpringBoot的理解?

是一站式解决方案,简化了Spring繁琐的配置,提供了各种启动器,让开发者更好上手。

2、为什么使用SpringBoot,它有什么优点?
  • 版本锁定: 解决maven依赖版本冲突问题

  • 起步依赖: 解决jar过多问题

  • 自动配置: 解决配置文件过多问题

  • 内置tomcat: 通过内置tomcat,不需要其他外置tomcat,也能运行javaEE。

3、SpringBoot和SpringCloud的区别?

SpringBoot是快速开发的Spring框架,SpringCloud是完整的微服务框架,SpringCloud依赖于SpringBoot。

4、SpringBoot核心配置文件有哪些?作用是什么?

applicationbootstrap 配置文件。 application: 用于项目的自动化配置。 bootstrap: 一些不能被覆盖的属性和加密或解密的场景。比application要先加载。

5、SpringBoot自动装配原理?

SpringBoot的自动配置原理基于@SpringBootApplication注解,它封装了@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan@EnableAutoConfiguration是核心,它通过@Import导入配置选择器,读取META-INF/spring.factories文件中的类名,根据条件注解(@Conditional)决定是否将配置类中的Bean导入到Spring容器中。

6、SpringBoot常见的注解有哪些?

Spring Boot的常见注解包括:

  • @SpringBootApplication:由@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan组成。

  • 其他注解如@RestController@GetMapping@PostMapping等,用于简化Spring MVC的配置。

7、什么是热部署?SpringBoot怎么实现热部署?

热部署: 修改代码不需要重启,就可以实现编译并部署到服务器上。(1)在开发时修改代码不需要重启服务,节省了时间。(2)部署在服务器上的程序,可以在不停止的情况下进行升级。 ①使用devtools。在配置文件中把devtools.restart.enabled 设置为 true。每次都需要build一下才行。 ②idea设置实现热部署。

8、SpringBoot全局异常处理?

@ControllerAdvice:开启了全局异常的捕获。然后自定义一个方法使用@ExceptionHandler注解然后定义捕获异常的类型即可对这些捕获的异常进行统一的处理。

复制代码
@ControllerAdvice
public class ExceptionUtil{
​
    @ExceptionHandler(value =Exception.class)
    @ResponseBody
    public String exceptionHandler(Exception e){
        System.out.println("全局异常捕获:"+e);
        return "全局异常捕获,错误原因:"+e.getMessage();
    }
}
相关推荐
意倾城4 分钟前
浅说MyBatis-Plus 的 saveBatch 方法
java·mybatis
JANYI20189 分钟前
C语言易混淆知识点详解
java·c语言·算法
.生产的驴1 小时前
Maven 公司内部私服中央仓库搭建 局域网仓库 资源共享 依赖包构建共享
java·maven
Auc241 小时前
OJ判题系统第6期之判题逻辑开发——设计思路、实现步骤、代码实现(策略模式)
java·开发语言·docker·容器·策略模式
快乐肚皮1 小时前
深入解析Docker:核心架构与最佳实践
java·运维·docker·容器
zhou1852 小时前
MySQL保姆级安装教程(附资源包+5分钟极速配置+环境变量调试技巧)
java·python·mysql·php
小雅痞2 小时前
[Java][Leetcode middle] 55. 跳跃游戏
java·leetcode
com未来2 小时前
使用 NSSM 安装 Tomcat 11.0.6 为 Windows 服务
java·windows·tomcat
TDengine (老段)2 小时前
基于 TSBS 标准数据集下 TimescaleDB、InfluxDB 与 TDengine 性能对比测试报告
java·大数据·开发语言·数据库·时序数据库·tdengine·iotdb
养军博客2 小时前
spring boot3.0自定义校验注解:文章状态校验示例
java·前端·spring boot