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();
    }
}
相关推荐
程序猿大帅6 分钟前
别再只当调包侠了:用 Spring AI 落地 Function Calling,我被大模型硬生生砸出了三个大坑
java
程序员晓琪1 小时前
约定大于配置:基于 Java 包名自动生成 API 版本路由的最佳实践
java·spring boot·后端
Flittly1 小时前
【AgentScope Java新手村系列】(11)中断与恢复
java·spring boot·spring
众少成多积小致巨2 小时前
JNI (Java Native Interface) 技术手册中文参考指南
android·java·c++
东坡白菜2 小时前
破局全栈:前端开发的Java入门实战记录—JPA(2)
java·后端
SimonKing8 小时前
艹,维护AI写的代码,我心态崩了......
java·后端·程序员
用户298698530148 小时前
Java Word 文档样式进阶:段落与文本背景色设置完全指南
java·后端
dunky9 小时前
Spring 的三级缓存与循环依赖
后端·spring
小bo波1 天前
从"任意文件复制"深挖Java I/O:字符流与字节流的本质抉择
java·nio·io流·后端开发·文件复制
nanxun8862 天前
记一次诡异的 Docker 容器"串包"故障排查
java