【Spring Boot】spring boot主启动类_内置服务

1、主启动类

1.1 定义与功能

  • Spring Boot的主启动类是一个特殊的Java类,用于启动Spring Boot应用程序。
  • 该类通常使用@SpringBootApplication注解进行标注,这个注解是一个复合注解,包含@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan三个核心注解。

1.2 注解详解

  • @SpringBootConfiguration:用于指定当前类是一个配置类,与@Configuration功能相同。
  • @EnableAutoConfiguration:启动自动配置,它会根据类路径中的jar包依赖、各种属性设置和其他因素来自动配置Spring应用程序。
  • @ComponentScan:让Spring扫描到Configuration类并把它加入到程序上下文。默认会扫描当前包及其子包下的所有类。

1.3 主方法

  • 主启动类中的main方法是程序的入口点。
  • 通过调用SpringApplication.run(SpringBootDemoApplication.class, args);来启动Spring Boot应用程序。

2、内置服务

2.1 内置Web服务器

  • Spring Boot为Web应用提供了内置Web服务器,无需额外安装Tomcat、Jetty或Undertow等服务器。
  • 通过添加相应的依赖(如spring-boot-starter-web),可以自动配置内置Web服务器。

2.2 支持的服务器

  • Tomcat:默认内置Web服务器。
  • Jetty:另一种轻量级的Web服务器。
  • Undertow:一个高性能的Web服务器和Servlet容器。
  • Netty:对于基于反应式编程的Web应用(使用Spring WebFlux),Netty是默认的选择。

2.3 自动配置机制

  • 内置Web服务器的自动配置基于Spring Boot的自动配置SPI机制和BeanPostProcessor机制。
  • 在项目启动时,Spring Boot会根据依赖关系和配置文件来选择合适的内置服务器并进行自动配置。

2.4 定制配置

  • 如果需要定制内置服务器的配置,如端口号、访问日志等,可以通过配置文件(如application.properties或application.yml)进行设置。

相关推荐

  1. 【Spring Boot】spring boot启动_服务

    2024-07-13 01:38:01       22 阅读
  2. Spring Boot 工具

    2024-07-13 01:38:01       50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 01:38:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 01:38:01       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 01:38:01       58 阅读
  4. Python语言-面向对象

    2024-07-13 01:38:01       69 阅读

热门阅读

  1. qt 折线图

    2024-07-13 01:38:01       22 阅读
  2. 【Linux】02.shell命令及其运行原理

    2024-07-13 01:38:01       23 阅读
  3. RAG的上限在哪里?边界在哪里?

    2024-07-13 01:38:01       21 阅读
  4. 我的大事记

    2024-07-13 01:38:01       19 阅读
  5. 每天一个数据分析题(四百二十八)- 方差分析

    2024-07-13 01:38:01       24 阅读
  6. C++ 函数返回值是void* 使用场景

    2024-07-13 01:38:01       23 阅读
  7. 2974.最小数字游戏

    2024-07-13 01:38:01       21 阅读
  8. ahb 总线的一些思考

    2024-07-13 01:38:01       24 阅读
  9. 级联目标检测:构建高效目标识别的多阶段策略

    2024-07-13 01:38:01       23 阅读
  10. C语言8 数组与字符串

    2024-07-13 01:38:01       21 阅读
  11. 人工智能讲座——深度学习实现行人重识别

    2024-07-13 01:38:01       23 阅读
  12. LeetCode 算法:全排列 c++

    2024-07-13 01:38:01       24 阅读
  13. 云端日历同步大师:iCloud让工作与生活井井有条

    2024-07-13 01:38:01       26 阅读