欢迎关注WX公众号:“程序猿补课班”,分享Java相关技术知识,学习经验,面试经验等。小伙伴快来补课吧!
正文开始
- Spring Boot 有哪些优点?
-
1、减少开发,测试时间和努力。
-
2、使用 JavaConfig 有助于避免使用 XML。
-
3、避免大量的 Maven 导入和各种版本冲突。
-
4、没有单独的 Web 服务器需要。
-
5、需要更少的配置 因为没有 web.xml 文件。只需添加用@ Configuration 注释的类,然后添加用@Bean 注释的方法,Spring 将自动加载对象并像以前一样对其进行管理。您甚至可以将@Autowired 添加到 bean 方法中,以使 Spring 自动装入需要的依赖关系中。
2.Spring 和 SpringBoot 有什么不同?
首先,最重要的一点,Spring Boot是Spring的扩展,使用“约定优于配置”的理念开发,所以使用Spring Boot开发同样的功能,往往不需要像Spring那样手动配置。Spring Boot的自动装配,使各个功能模块的引入和配置变得非常简单,几乎可以做到0配置。
其次,如果展开去说,Spring Boot在应用容器配置、数据库配置、安全配置、测试和部署方便都与Spring有不同,但基本上都更加简单,受益于自动装配。
综上所述,最大的区别就是Spring更多的需要人工配置,Spring Boot实现了自动装配。
3.Spring Boot 自动配置原理是什么?
@Configuration
@ComponentScan
@EnableAutoConfiguration
其中 @EnableAutoConfiguration 是实现自动配置的入口,该注解又通过 @Import 注解导入了AutoConfigurationImportSelector,在该类中加载 META-INF/spring.factories 的配置信息。然后筛选出以 EnableAutoConfiguration 为 key 的数据,加载到 IOC 容器中,实现自动配置功能!
4.你如何理解 Spring Boot 中的 Starters?
tarters 可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式
集成 Spring 及其他技术,而不需要到处找示例代码和依赖包。如你想使用 Spring JPA 访
问数据库,只要加入 spring-boot-starter-data-jpa 启动器依赖就能使用了。
5.Spring Boot 有哪几种读取配置的形式?
@PropertySource
@Value
@Environment,
@ConfigurationProperties
6.Spring Boot 的配置文件有哪几种格式?
1 , properties文件:
app.user.name = helloword
2, yml文件:
app:
user:
name: helloword
7.SpringBoot运行项目的几种方式?
1、 打成jar包,使用java -jar xxx.jar运行
2、 打成war包,放到tomcat里面运行
直接用maven插件运行 maven spring-boot:run
直接执行main方法运行
8.SpringBoot中有哪些常用注解
@ComponentScan :作用扫描
@MapperScan :扫描mapper
@SpringBootApplication 组合注解
@EnableAutoConfiguration 开启自动配置的功能
@RestController注解是@Controller和@ResponseBody的合集。
使用在类上,表示该类是控制器,并且类中所有控制器方法的返回值直接填入HTTP响应体中,是RESTful风格的控制器,控制器方法返回JSON数据。
@AutoWired
自动导入依赖的bean。byType方式。把配置好的Bean拿来用,完成属性、方法的组装,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。当加上(required=false)时,就算找不到bean也不报错。
@Qualifier
当有多个同一类型的Bean时,可以用@Qualifier(“name”)来指定。与@Autowired配合使用。@Qualifier限定描述符除了能根据名字进行注入,但能进行更细粒度的控制如何选择候选者。
@Resource(name=”name”,type=”type”)
没有括号内内容的话,默认byName。与@Autowired干类似的事。
@ControllerAdvice
包含@Component,可以被扫描到。统一处理异常。
如有错漏之处,敬请指正