当前位置: 首页 > ai >正文

Java、ssm(AI) 2025/5/17

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

这俩包分别是干嘛的

这两个包是Spring Boot框架中的核心组件,它们的作用如下:

1. `org.springframework.boot.SpringApplication`
   - 这是Spring Boot应用的启动类
   - 主要功能:负责启动Spring应用,创建适当的ApplicationContext实例,加载bean等
   - 关键方法:`run()` - 用于启动Spring应用
   - 会自动设置默认配置,如默认的配置文件加载、日志系统初始化等

2. `org.springframework.boot.autoconfigure.SpringBootApplication`
   - 这是一个组合注解(composed annotation),包含三个核心注解:
     * `@SpringBootConfiguration` - 标识这是一个Spring Boot配置类
     * `@EnableAutoConfiguration` - 启用Spring Boot的自动配置机制
     * `@ComponentScan` - 启用组件扫描,自动发现和注册Bean
   - 通常用在主类(main class)上,标记这是一个Spring Boot应用

典型用法示例:

@SpringBootApplication
public class MyApp {public static void main(String[] args) {SpringApplication.run(MyApp.class, args); }
}

@SpringBootApplication这个注释是干嘛的

@SpringBootApplication 是 Spring Boot 最核心的注解,它是一个组合注解,用于简化 Spring Boot 应用的初始配置。它的作用相当于同时使用以下三个关键注解:

① @SpringBootConfiguration
  • 本质是 @Configuration 的变体,标记该类为配置类

  • 允许在类中通过 @Bean 定义 Spring 容器管理的对象。

② @EnableAutoConfiguration(核心)
  • 自动配置 Spring Boot 应用的默认行为。

  • 根据项目的依赖(如 spring-boot-starter-webspring-boot-starter-data-jpa自动配置组件(如数据源、MVC、事务等)。

  • 底层通过 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 文件加载配置类。

③ @ComponentScan
  • 自动扫描当前包及其子包下的组件(如 @Controller@Service@Repository)。

  • 无需手动配置 XML 或 Java Bean。

SpringApplication.run() 完成:

启动Spring容器

初始化自动配置的组件(如Web服务器)

加载所有@Component、@Service等注解的Bean(但不会主动调用它们的方法,除非被依赖注入触发)。

http://www.xdnf.cn/news/6935.html

相关文章:

  • JavaScript:PC端特效-从mouseenter和mouseover的区别到动画函数
  • 202537 |《代码整洁之道》笔记
  • Linux进程异常退出排查指南
  • C++ 手撕shared_ptr
  • 基于朴素贝叶斯与 LSTM 的假新闻检测模型对比分析
  • Linux容器技术详解
  • TransmittableThreadLocal使用场景
  • 编译原理实验五:LR语法分析器的控制程序
  • 类方法_静态方法_实例方法
  • RAG流程介绍
  • [Windows] 自动关机辅助工具 Shutdown Timer Classic 1.2.3
  • 反向海淘爆发期:独立站系统如何打造跨境代购新基建?​
  • BrepGen中的几何特征组装与文件保存详解 deepwiki occwl OCC包装库
  • 如何用AI优化简历:自动读取与精华浓缩
  • Python训练营打卡 Day28
  • 【SpringBoot】MyBatisPlus(MP | 分页查询操作
  • 通过向量化数据结合大模型解释进行物料智能辨别
  • USRP 射频信号 采集 回放 系统
  • 博客打卡-求解流水线调度
  • Redis学习专题(二)事务和锁机制
  • spring cache使用指南
  • Python绘制克利夫兰点图:从入门到实战
  • Scanner对象
  • 微机电子拉伸试验机
  • Vue-事件修饰符
  • 56.合并区间(java)
  • 【springboot】HttpClient快速入门
  • 数组名既可作为指针也可作为变量名
  • 2025春训第二十场
  • vector(c++)