spring-boot的相关问题

1、Spring Boot Starter的工作原理?
1、Spring Boot 在启动时扫描项目所依赖的JAR包,寻找包含spring.factories文件的JAR
2、根据spring.factories配置加载AutoConfigure类 。
3、根据 @Conditional注解的条件,进行自动配置并将Bean注入Spring Context。

2、什么是springboot ?
1、用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件) ,约定大于配置,去繁从简
2、创建独立的spring引用程序 main方法运行
3、嵌入的Tomcat 无需部署war文件
4、简化maven配置
5、自动配置spring添加对应功能starter自动化配置

3、什么是YAML?
YAML是一种人类可读的数据序列化语言。它通常用于配置文件。
与属性文件相比,如果我们想要在配置文件中添加复杂的属性,YAML文件就更加结构化,而且更少混淆。可以看出YAML具有分层配置数据。

4、springboot自动配置的原理 ?
在spring程序main方法中 添加@SpringBootApplication或者@EnableAutoConfiguration 会自动去maven中读取每个starter中的spring.factories文件 该文件里配置了所有需要被创建spring容器中的bean。

5、springboot读取配置文件的方式?
springboot默认读取配置文件为application.properties或者是application.yml。

6、springboot集成mybatis的过程?
添加mybatis的starter maven依赖
在mybatis的接口中 添加@Mapper注解
在application.yml配置数据源信息

7、常见的starter包含几个方面的内容?分别是什么?
常见的starter会包括下面四个方面的内容:
1、自动配置文件,根据classpath是否存在指定的类来决定是否要执行该功能的自动配置。

2、spring.factories,非常重要,指导Spring Boot找到指定的自动配置文件。

3、endpoint:可以理解为一个admin,包含对服务的描述、界面、交互(业务信息的查询)。

4、health indicator:该starter提供的服务的健康指标。

两个需要注意的点:
1、@ConditionalOnMissingBean的作用是:只有对应的bean在系统中都没有被创建,它修饰的初始化代码块才会执行,【用户自己手动创建的bean优先】。

2、Spring Boot Starter找到自动配置文件(xxxxAutoConfiguration之类的文件)的方式有两种:
spring.factories:由Spring Boot触发探测classpath目录下的类,进行自动配置。
@EnableXxxxx:有时需要由starter的用户触发查找自动配置文件的过程。

8、自定义springboot-starter注意事项?
1、springboot默认scan的包名是其main类所在的包名。如果引入的starter包名不一样,需要自己添加scan。
@ComponentScan(basePackages = {“com.xixicat.demo”,“com.xixicat.sms”})

2、对于starter中有feign的,需要额外指定
@EnableFeignClients(basePackages = {“com.xixicat.sms”})

3、对于exclude一些autoConfig
@EnableAutoConfiguration(exclude ={MetricFilterAutoConfiguration.class})

9、Spring Boot 2.0 需要的java版本是多少?
Spring Boot 2.0 需要 Java8 或者更新的版本。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值