Spring常用注解和组件

news/2025/2/12 6:14:09/

引言

了解Spring常用注解的使用方式可以帮助我们更快速理解这个框架和其中的深度

注解

@Configuration:表示该类是一个配置类,用于定义 Spring Bean。

@EnableAutoConfiguration:启用 Spring Boot 的自动配置功能,让 Spring Boot 根据类路径中的依赖自动配置应用。

@ComponentScan:启用组件扫描,Spring Boot 会扫描该类所在包及其子包下的组件,并将它们注册为 Spring Bean。

@SpringBootApplication :这个注解包含上面三个注解

@ImportResource:从一个基于 XML 配置的旧 Spring 项目迁移到基于 Java 注解的配置时,可能不想一下子把所有的 XML 配置都转换为 Java 注解配置,这时就可以使用 @ImportResource 逐步引入现有的 XML 配置文件。

组件

创建一个 SpringApplication 实例,然后调用 run 方法启动应用。run 方法接受一个 String[] 类型的参数,通常是 main 方法的 args 参数,用于传递命令行参数。   

java">import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class Application {public static void main(String[] args) {// 创建 SpringApplication 实例SpringApplication app = new SpringApplication(Application.class);// 启动应用app.run(args);}
}

以上文Spring启动类我们来分析一下Spring的组件

1. SpringApplication 类

SpringApplication 类是 Spring Boot 框架的核心启动类,它封装了启动 Spring 应用所需的一系列操作

  • 自动配置:根据类路径中的依赖和应用的配置,自动配置 Spring 应用的各种组件,如数据源、消息队列等。
  • 组件扫描:扫描指定包及其子包下带有特定注解(如 @Component、@Service、@Repository 等)的类,并将它们注册为 Spring Bean。
  • 启动嵌入式服务器:如果应用是一个 Web 应用,SpringApplication 会自动启动嵌入式服务器(如 Tomcat、Jetty 等)。

2. Application.class 参数

Application.class 通常是 Spring Boot 应用的主类,这个类一般带有 @SpringBootApplication 注解,该注解是一个组合注解,包含了 @Configuration、@EnableAutoConfiguration 和 @ComponentScan 注解

     


http://www.ppmy.cn/news/1571340.html

相关文章

Kafka的架构解析

目录 1 背景2 kafka的架构来源2.1 增加消息队列2.2 高性能2.3 高可用2.4 持久化和过期策略2.5 Consumer Group2.6 Zookeeper 3 Kafka架构图4 Kafka的应用场景 1 背景 场景: A服务每秒发送200个消息 B服务每秒处理100个消息 问题: B服务会被压垮&#xf…

【SLAM】中ZUPT的原理、名称由来及作用详解

SLAM中ZUPT的原理、名称由来及作用详解 名称由来 ZUPT 是 Zero Velocity Update(零速度更新)的缩写,来源于其核心思想:在检测到系统处于静止状态时,将速度设为零并用于校正导航误差。名称中的“Z”代表“Zero”&…

算法题(64):字母异位词分组

审题: 需要我们把strs中的不同组字母异位词分组存储在二维数组中并返回 思路: 字母异位词:虽然他们的字母顺序不同,但是他们的字母类型与个数是完全一样的,也就是说我们对同一组的字母异位词排序之后,他们最…

MarsCode AI插件在IntelliJ IDEA中使用

文章目录 前言一、MarsCode是什么?二、下载三、使用1、登录2、操作界面3、生成代码4、解释代码5、注释代码6、生成单测7、智能修复8、代码补全 总结 前言 随着 AI 技术浪潮席卷而来,各类 AI 工具呈爆发式涌现,深度融入我们的日常与职场&…

宝塔一键部署Wordpress无法打开,显示响应时间太长

之前一直使用宝塔管理服务器,近期又折腾AI,宝塔是卸了装装了卸,服务器安全组规则也是不断地添加删除。DeepSeek最后终于部署好了,但是突然发现建设其他站点时,都是无法访问,这是啥原因了? 最后通…

索引为什么是B+树结构,MySQL有哪些引擎,有什么区别?

目录 为什么索引使用 B+ 树结构? 1. 适合磁盘存储 2. 高效的查询性能 3. 适合大数据量 4. 与 B 树的区别 MySQL 的存储引擎及区别 1. InnoDB 2. MyISAM 3. Memory 4. Archive 5. CSV 6. Blackhole 存储引擎的选择建议 总结 为什么索引使用 B+ 树结构? B+ 树是…

CodeGPT + IDEA + DeepSeek,在IDEA中引入DeepSeek实现AI智能开发

CodeGPT IDEA DeepSeek,在IDEA中引入DeepSeek 版本说明 建议和我使用相同版本,实测2022版IDEA无法获取到CodeGPT最新版插件。(在IDEA自带插件市场中搜不到,可以去官网搜索最新版本) ToolsVersionIntelliJ IDEA202…

企业需要了解的事项:什么是知识中台?

本文的关键要点: 知识中台集中管理关键信息,使员工、客户和合作伙伴能够轻松获取所需内容。通过提供资源和最佳实践的单一存储库,简化了培训和入职流程。知识中台充当自助服务门户,使客户能够快速找到答案,从而减轻支…