SpringBoot@Configuration使用总结

简介: 被@Configuration标注的类视为Spring配置类,等同于XML配置文件。通过@Bean注册Bean,结合AnnotationConfigApplicationContext可启动IOC容器,加载并管理Bean实例,包括配置类自身。

被@Configuration标注的类视为Spring配置类,等同于XML配置文件。通过@Bean注册Bean,结合AnnotationConfigApplicationContext可启动IOC容器,加载并管理Bean实例,包括配置类自身。

被 @Configuration 标注的类,会被 Spring 的IOC容器认定为配置类。
一个被 @Configuration 标注的类,相当于一个 applicationContext.xml 的配置文件。

例如:声明一个类,并标注 @Configuration 注解:
@Configuration
public class ConfigurationDemo {
@Bean
public Date currentDate() {
return new Date();
}
}

上述注册Bean的方式类比于xml:

之后使用注解启动方式,初始化一个IOC容器,并打印IOC容器中的所有bean的name:

public class MainApp {
public static void main(String[] args) throws Exception {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(ConfigurationDemo.class);
String[] beanDefinitionNames = ctx.getBeanDefinitionNames();
Stream.of(beanDefinitionNames).forEach(System.out::println);
}
}

输出结果:
org.springframework.context.annotation.internalConfigurationAnnotationProcessor
org.springframework.context.annotation.internalAutowiredAnnotationProcessor
org.springframework.context.annotation.internalCommonAnnotationProcessor
org.springframework.context.event.internalEventListenerProcessor
org.springframework.context.event.internalEventListenerFactory
configurationDemo
currentDate

可以发现组件,以及配置类本身被成功加载。

相关文章
|
19天前
|
人工智能 JavaScript Linux
【Claude Code 全攻略】终端AI编程助手从入门到进阶(2026最新版)
Claude Code是Anthropic推出的终端原生AI编程助手,支持40+语言、200k超长上下文,无需切换IDE即可实现代码生成、调试、项目导航与自动化任务。本文详解其安装配置、四大核心功能及进阶技巧,助你全面提升开发效率,搭配GitHub Copilot使用更佳。
11286 22
|
2月前
|
机器学习/深度学习 存储 自然语言处理
大模型基础概念术语解释
大语言模型(LLM)基于Transformer架构,通过海量文本训练,具备强大语言理解与生成能力。其核心组件包括注意力机制、位置编码与嵌入层,支持文本分割为Token进行处理。参数量达亿级以上,规模增长带来涌现能力,如复杂推理与跨任务泛化。混合专家模型(MoE)提升效率,推动模型持续扩展。
|
2月前
|
消息中间件 人工智能 决策智能
AgentScope x RocketMQ:构建多智能体应用组合
AgentScope是阿里巴巴推出的开发者友好型多智能体框架,支持模块化、可定制的智能体应用开发。通过集成RocketMQ,实现高效、可靠的Agent间通信,助力构建如“智能旅行助手”等复杂协作场景,推动多智能体生态发展。(238字)
|
2月前
|
XML 算法 安全
详解RAG五种分块策略,技术原理、优劣对比与场景选型之道
RAG通过检索与生成结合,提升大模型在企业场景的准确性与安全性。分块策略是其核心,直接影响检索效果与生成质量。本文系统解析五种主流分块方法:固定大小、语义、递归、基于文档结构及LLM分块,对比其优缺点与适用场景,并探讨RAG在金融、医疗等高风险领域的可验证性挑战与前沿优化路径。
|
2月前
|
SQL 运维 分布式计算
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS,提供健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,助力用户全面掌握SQL使用情况,提升日志分析效率与治理能力。
|
2月前
|
机器学习/深度学习 人工智能 安全
大模型伦理与公平性术语解释
大语言模型中的偏见、公平性、可解释性、安全对齐、人类对齐与隐私保护是AI伦理核心议题。偏见源于数据,需通过去偏技术缓解;公平性要求无歧视,依赖数据与算法优化;可解释性提升透明度,增强信任;安全对齐防止有害输出;人类对齐确保价值观一致;隐私保护防范数据泄露。六者协同推进负责任AI发展。(238字)
|
2月前
|
负载均衡 中间件 Java
每日必会1
微服务并非绝对优于单体,需结合业务。简单场景下单体更轻便;复杂业务链路适合微服务,解耦利于扩展。常用中间件:Nacos(注册/配置中心)、OpenFeign(远程调用)、Gateway(网关)。Nacos支持心跳机制,临时实例异常则剔除,非临时实例不剔除,且支持服务变更推送,集群可切CP/AP模式。负载均衡常用轮询、加权轮询等。
每日必会7
CAP理论指出分布式系统中一致性(C)、可用性(A)、分区容错性(P)不可兼得,只能三选二。由于网络故障不可避免,P必须保证,因此只能在A和C间权衡。BASE理论是对此的实践补充,主张基本可用、软状态、最终一致性。Seata AT模式通过全局事务ID(XID)协调分支事务注册与提交,实现分布式事务一致性。MQ防丢消息:生产端确认、持久化、消费端ACK;防重复消费:幂等设计;防积压:扩容、批量处理、限流削峰。