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();
    }
}
相关推荐
repetitiononeoneday32 分钟前
java基础课程-springmvc课程
java·开发语言
Mr.每天进步一小步41 分钟前
每天记录一道Java面试题---day39
java·jvm·面试
工业互联网专业42 分钟前
基于springboot+vue的数码产品抢购系统
java·vue.js·spring boot·毕业设计·源码·课程设计·数码产品抢购系统
敖云岚42 分钟前
【AI】SpringAI 第二弹:接入 DeepSeek 官方服务
java·人工智能·spring boot·后端·spring
purrrew1 小时前
【数据结构_6】双向链表的实现
java·数据结构·链表
axinawang1 小时前
Spring Boot管理Spring MVC
spring boot·spring·mvc
nangonghen1 小时前
JAVA程序实现mysql读写分离并在kubernetes中演示
java·mysql·mybatis·读写分离
eternal__day1 小时前
MyBatis-Plus 详解:快速上手到深入理解
java·spring boot·后端·spring·java-ee·maven·mybatis
Java中文社群1 小时前
超实用!用FunctionCall实现快递AI助手
java·人工智能·后端
XuanXu1 小时前
Java Project Leyden如何提高JVM启动速度&技术前瞻
java