前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring Boot常见面试题总结

Spring Boot常见面试题总结

作者头像
是阿超
发布2021-10-28 15:39:07
4870
发布2021-10-28 15:39:07
举报
文章被收录于专栏:CSDNCSDN

Spring Boot常见面试题总结

(原创不易,你们对阿超的赞就是阿超持续更新的动力!)

(以免丢失,建议收藏)

(------------------------------------------------------------------------)

Spring Boot自动装配

含义: SpringBoot的核心就是自动配置,自动配置又是基于条件判断来配置Bean

主要关注的几个注解如下: @SpringBootConfiguration:标记当前类为配置类 @EnableAutoConfiguration:开启自动配置 @ComponentScan:扫描主类所在的同级包以及下级包里的Bean

关键是@EnableAutoConfiguration 最关键的要属@Import(EnableAutoConfigurationImportSelector.class), 借助EnableAutoConfigurationImportSelector,@EnableAutoConfiguration可以帮助SpringBoot应用将所有符合条件的@Configuration配置都加载到当前SpringBoot创建并使用的IoC容器: 通过@Import(AutoConfigurationImportSelector.class)导入的配置功能, AutoConfigurationImportSelector中的方法getCandidateConfigurations,得到待配置的class的类名集合,这个集合就是所有需要进行自动配置的类,而是是否配置的关键在于META-INF/spring.factories文件中是否存在该配置信息

Spring Boot常用注解

@SpringBootApplication(复合注解):

  • @SpringBootConfiguration:标记当前类为配置类,主要用于加载配置文件
  • @EnableAutoConfiguration:自动配置的注解
  • @ComponentScan:主要用于组件扫描和自动装配(扫描主类所在的同级包以及下级包里的Bean)

@RestController:使用的效果是将方法返回的对象直接在浏览器上展示成json格式,用于标注控制层组件(包含@Controller和@ResponseBody); @Configuration:主要用于加载配置文件,指出该类是 Bean 配置的信息源,相当于XML中的,一般加在主类上; @Bean:相当于XML中的,放在方法的上面,而不是类,意思是产生一个bean,并交给spring管理; @Autowired:自动注入,默认按类型装配; @PathVariable:路径变量注解,获取参数; @ImportResource:将资源导入容器; @PropertySource:导入properties文件; @MapperScan:Spring Boot支持mybatis组件的一个注解,通过此注解指定mybatis接口类的路径,即可完成对mybatis接口的扫描

Spring Boot需要独立容器进行运行吗

Spring Boot不需要独立的容器就可以运行,因为在Spring Boot工程发布的jar文件里已经包含了tomcat的jar文件。Spring Boot运行的时候,会创建tomcat对象,实现web服务功能。也可以将Spring Boot发布成war文件,放到tomcat里运行。

Spring Boot和Spring Cloud

SpringBoot是Spring推出用于解决传统框架配置文件冗余,装配组件繁杂的基于Maven的解决方案,旨在快速搭建单个微服务。 而SpringCloud专注于解决各个微服务之间的协调与配置,服务之间的通信、熔断、负载均衡等 技术维度并相同,并且SpringCloud是依赖于SpringBoot的,而SpringBoot并不是依赖与SpringCloud,甚至还可以和Dubbo进行优秀的整合开发

总结: SpringBoot专注于快速方便的开发单个个体的微服务 SpringCloud是关注全局的微服务协调整理治理框架,整合并管理各个微服务,为各个微服务之间提供配置管理、服务发现、断路器、路由、事件总线等集成服务 SpringBoot不依赖于SpringCloud,SpringCloud依赖于SpringBoot,属于依赖关系 SpringBoot专注于快速,方便的开发单个的微服务个体,SpringCloud关注全局的服务治理框架

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-10-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Spring Boot常见面试题总结
  • (原创不易,你们对阿超的赞就是阿超持续更新的动力!)
  • (以免丢失,建议收藏)
  • (------------------------------------------------------------------------)
  • Spring Boot自动装配
  • Spring Boot常用注解
  • Spring Boot需要独立容器进行运行吗
  • Spring Boot和Spring Cloud
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档