springboot面经1

1. 什么是spring框架?有哪些模块?哪些特性?

spring框架是为Java应用程序开发提供了综合、广泛的基础性支持的Java平台。它是帮助程序员解决开发中基础性问题,使得程序员专注于应用程序的开发。

Spring 是一种轻量级开发框架,它有很多模块比如:核心容器、数据访问/集成,、Web、AOP(面向切面编程)、工具、消息和测试模块。

Spring框架的七大模块:

  • Spring Core :框架的最基础部分,提供 IoC 容器,对 bean 进行管理。

  • Spring Context :基于 bean,提供上下文信息,扩展出JNDI、EJB、电子邮件、国际化、校验和调度等功能。

  • Spring DAO : 提供了JDBC的抽象层,它可消除冗长的JDBC编码和解析数据库厂商特有的错误代码,还提供了声明性事务管理方法。

  • Spring ORM : 提供了常用的“对象/关系”映射APIs的集成层。 其中包括JPA、JDO、Hibernate、MyBatis 等。

  • Spring AOP : 提供了符合AOP Alliance规范的面向方面的编程实现。

  • Spring Web : 提供了基础的 Web 开发的上下文信息,可与其他 web 进行集成。

  • Spring Web MVC : 提供了 Web 应用的 Model-View-Controller 全功能实现。

SpringBoot的特征:

  • 创建独立的Spring应用程序

  • 直接嵌入Tomcat,Jetty或Undertow(无需部署WAR文件)

  • 提供固化的“starter”依赖项,以简化构建配置

  • 尽可能自动配置Spring和3rd Party库

  • 提供可用于生产的功能,例如指标,运行状况检查和外部化配置

  • 完全没有代码生成,也不需要XML配置

3. 如何快速构建一个SpringBoot项目?

  • 通过Web界面使用。http://start.spring.io

  • 通过Spring Tool Suite使用。

  • 通过IntelliJ IDEA使用。

  • 使用Spring Boot CLI使用。

4. SpringBoot启动类注解?它是由哪些注解组成?

@SpringBootApplication

  • @SpringBootConfifiguration:组合了 @Confifiguration 注解,实现配置文件的功能。

  • @EnableAutoConfifiguration:打开自动配置的功能,也可以关闭某个自动配置的选项。

  • @SpringBootApplication(exclude = { DataSourceAutoConfifiguration.class })

  • @ComponentScan:Spring组件扫描

5. 什么是yaml?

YAML是一个可读性高,用来表达数据序列化的格式。YAML参考了其他多种语言,包括:C语言、Python、Perl。更具有结构性。

6. SpringBoot支持配置文件的格式?

1.properties

java.xiaokaxiu.name = xiaoka 

2.yml

java: xiaokaxiu: name: xiaoka

7. SpringBoot启动方式?

  1. 执行带有main方法类:使用IDEA启动

  2. 命令行 java -jar 的方式

  3. mvn/gradle: mvn spring-boot:run

8. SpringBoot需要独立的容器运行?

不需要,内置了 Tomcat/Jetty。

9. SpringBoot配置途径?

  1. 命令行参数

  2. java:comp/env里的JNDI属性

  3. JVM系统属性

  4. 操作系统环境变量

  5. 随机生成的带random.*前缀的属性(在设置其他属性时,可以引用它们,比如${random.

long})

  1. 应用程序以外的application.properties或者appliaction.yml文件

  2. 打包在应用程序内的application.properties或者appliaction.yml文件

  3. 通过@PropertySource标注的属性源

  4. 默认属性

tips:这个列表按照优先级排序,也就是说,任何在高优先级属性源里设置的属性都会覆盖低优先级的相同属性。

猜你喜欢

转载自blog.csdn.net/slave_of_life/article/details/130667780
今日推荐