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();
    }
}
相关推荐
lkbhua莱克瓦241 小时前
Java基础——集合进阶3
java·开发语言·笔记
蓝-萧1 小时前
使用Docker构建Node.js应用的详细指南
java·后端
多喝开水少熬夜1 小时前
Trie树相关算法题java实现
java·开发语言·算法
lkbhua莱克瓦242 小时前
Java基础——集合进阶用到的数据结构知识点1
java·数据结构·笔记·github
音符犹如代码3 小时前
Java并发List实战:CopyOnWriteArrayList原理与ArrayList常见面试题
java·开发语言·面试·list
代码or搬砖3 小时前
Docker 部署 Java 项目实践
java·docker·容器
又是忙碌的一天3 小时前
抽象类和接口
java·开发语言
August_._3 小时前
【MySQL】SQL语法详细总结
java·数据库·后端·sql·mysql·oracle
Dxxyyyy3 小时前
零基础学JAVA--Day26(枚举类)
java·开发语言
黑屋里的马3 小时前
java的设计模式之桥接模式(Bridge)
java·算法·桥接模式