SpringBoot入门知识点

1.什么是springboot ? Spring Boot有哪些特点?
SpringBoot是一个用于构建Java的应用程序的开源框架,可以让开发者更加快速的独立创建可运行的生产级别的Spring应用程序。
特点如下: ①简化的配置,通过默认设置和自动配置来减少开发者需要编写的配置的代码;②自动装配,SpringBoot自动装配应用程序的依赖,减少手动配置;③独立运行并且内置Web服务器,SpringBoot可以作为独立的Java应用程序进行运行,无需外部的服务器,内置了Web服务器;④丰富的生态系统,继承了Spring的框架的各个模块,同时也有大量的第三方插件和类库;⑤监控和管理以及自动化构建,SpringBoot可以和各个构建工具(Maven等)和集成开发环境IED良好集成,轻松构建项目

2.你知道“@SpringBootApplication”注解在内部是如何工作的吗?
@SpringBootApplication是SpringBoot应用程序的核心注解之一,他将多个注解结合在一起以便可以更加轻松的配置和启动SpringBoot项目,具体包含三个注解:
①:@Configuration,这个注解表示该类的配置类,它会被Spring容器用来配置应用程序的Bean
②:@EnableAutoConfiguration,这个注解启动了SpringBooot的自动装配功能,SpringBoot根据项目的依赖和配置,尝试装配应用程序的各个部分,减少开发者的装配工作
③:@ComponentScan:这个注解启用了组件扫描的功能,找到带有注解的类,并将他们注册为SpringBean
通常@SpringBootApplication 注解会放在应用程序的主类上,因此它会从主类所在的包开始进行扫描。

3.springboot自动配置的原理?
Spring Boot的自动配置原理是通过一种叫做“条件化自动配置”(Conditional Auto-Configuration)的机制来实现的,该机制允许Spring Boot根据应用程序的类路径和配置来自动决定是否应该应用某种配置,工作原理如下:
①:条件化注解:条件化注解包括 @ConditionalOnClass、@ConditionalOnBean、@ConditionalOnProperty 等,它们分别表示在类路径中是否存在某个类、是否存在某个Bean、是否配置了某个属性等条件。
②:自动配置类:包含在 spring-boot-autoconfigure 模块中。这些类使用条件化注解来标记,在满足特定条件时,它们将被激活并配置相应的Bean。
③:自动配置的触发:Spring Boot会检查条件化注解,以确定哪些自动配置类应该应用。
④:自定义配置:通过应用程序的配置文件自定义配置来覆盖或扩展Spring Boot的自动配置。
⑤:加载顺序:Spring Boot自动配置遵循加载顺序,后加载的配置可以覆盖先加载的配置。
⑥:条件化排除:如果您想要禁用某个自动配置,您可以使用 @EnableAutoConfiguration 注解的 exclude 属性,或者在 application.properties 或 application.yml 中使用 spring.autoconfigure.exclude 属性来指定要排除的自动配置类。

4.Spring Boot的核心注解是哪个?它主要由哪几个注解组成的?
Spring Boot的核心注解是 @SpringBootApplication,它主要由以下三个注解组成:
①:@SpringBootConfiguration:这是 @SpringBootApplication 的一个元注解,用于标记一个类作为Spring Boot的配置类。通常,这个注解与 @Configuration 注解具有相同的作用,表示这个类包含了Spring Bean的配置信息。
②:@EnableAutoConfiguration:这个注解启用了Spring Boot的自动配置功能。它告诉Spring Boot根据类路径和项目的依赖来自动配置应用程序。自动配置根据条件化注解来判断是否应用某种配置。
③:@ComponentScan:这个注解启用了Spring的组件扫描功能,它会扫描指定的包及其子包中的类,寻找带有 @Component、@Service、@Repository 等注解的类,并将它们注册为Spring Bean。

5.你如何理解spring Boot 中的Starters?
在Spring Boot中,“Starters”(起步依赖)是一组预定义的依赖项集合,它们旨在简化和加速Spring Boot应用程序的开发,理解:预配置的依赖项,简化依赖管理,快速启动,约定优于配置,可自定义。
常见的Spring Boot Starters包括:
spring-boot-starter-web:用于构建Web应用程序的Starter,包括Spring MVC、Tomcat嵌入式服务器等。
spring-boot-starter-data-jpa:用于JPA(Java Persistence API)数据访问的Starter,包括Hibernate、Spring Data JPA等。
spring-boot-starter-security:用于Spring Security的Starter,提供身份验证和授权功能。
spring-boot-starter-amqp:用于使用消息队列的Starter,包括RabbitMQ等。
spring-boot-starter-data-mongodb:用于MongoDB数据库访问的Starter。
spring-boot-starter-test:用于测试Spring Boot应用程序的Starter,包括JUnit、TestNG等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值