SpringBoot面试

1、什么是Springboot?

它是Spring开源组织下面的一个子项目,用来简化Spring的初始搭建和开发过程,提供了许多启动器,它内嵌了servlet容器tomcat和jetty,部署时不需要war文件,直接运行main方法。

2、你如何理解 Spring Boot 中的 Starters?

Starters可以理解为启动器,它包含一系列可以集成到应用里面的依赖包。如你想使用 Spring JPA 访问数据库,只要加入 spring-boot-starter-data-jpa 启动器依赖就能使用了。

3、springboot常用的starter有哪些?

spring-boot-starter-web 嵌入tomcat和web开发需要servlet与jsp支持

spring-boot-starter-data-jpa 数据库支持

spring-boot-starter-data-redis redis数据库支持

spring-boot-starter-data-solr solr支持

mybatis-spring-boot-starter  第三方的mybatis集成starter

4、SpringBoot的自动配置是什么?

当通过自动注入一个类实例之前,Spting容器需要管理这个类的实例,以往都是在xml通过一个bean标签、或者在类定义上加上@Component、@Configuration等注解来实现。这样才能使用注解注入这个类的实例。对于一些jar包里面的类的实例,以往需要在标签中引入写出这些类的实现类类名和路径。而SpringBoot自动配置功能,会自动配置一些内,注入在容器中,特别是对于一些jar包中的类,这样自动配置后我们只需要通过@Autowired或@Resource使用就可以了。

5、springboot自动配置的原理?

在spring程序main方法中 添加@SpringBootApplication或者@EnableAutoConfiguration

会自动去gradle、maven中读取每个starter中的spring.factories文件  该文件里配置了所有需要被创建spring容器中的bean

6、SpringBoot常用注解?

@SpringBootApplication、@EnableAutoConfiguration、@ComponentScan等等

7、SpringBoot实现热部署?

添加开发者工具集spring-boot-devtools。

8、SpringBoot读取配置文件内容的几种方式?

a.@Value注解读取方式

b.@ConfigurationProperties注解读取方式

c.类定义上面的注解加载配置文件:@PropertySource(value={"config/db-config.properties"}),加上@Value

9、如何在 Spring Boot 启动的时候运行一些特定的代码?

可以实现接口 ApplicationRunner 或者 CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个 run 方法

 

 

 

评论

:D 一言句子获取中...