无标题

简介: `@Configuration` 注解用于标记配置类,相当于 XML 配置文件,配合 `@Bean` 注册 Bean。通过 `AnnotationConfigApplicationContext` 可加载配置类并启动 IOC 容器,实现组件管理。

无标题

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

例如:声明一个类,并标注 @Configuration 注解:

Java

运行代码复制代码

1

2

3

4

5

6

7

@Configuration

public class ConfigurationDemo {

   @Bean

public Date currentDate() {

return new Date();

}

}


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

XML

复制代码

1

<bean id="currentDate" class="java.util.Date"/>


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

Java

运行代码复制代码

1

2

3

4

5

6

7

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);

}

}


输出结果:

Java

运行代码复制代码

1

2

3

4

5

6

7

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


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

1 人点赞

1


相关文章
|
人工智能 自然语言处理 文字识别
DeepMind首发游戏AI智能体SIMA:开启虚拟世界的智能探索之旅
【4月更文挑战第3天】DeepMind推出了SIMA,一种能在多个3D环境中执行语言指令的智能体,标志着AI在理解和互动虚拟世界上的进步。SIMA通过多样化的训练数据学习导航、操作、决策等技能,并结合预训练模型处理高维度输入输出。尽管在复杂任务上仍有提升空间,SIMA展现了正向迁移能力和潜力,为AI研究和未来机器人技术铺平道路。然而,仍需解决鲁棒性、可控性、评估方法及道德安全问题。
571 4
DeepMind首发游戏AI智能体SIMA:开启虚拟世界的智能探索之旅
|
25天前
|
人工智能 运维 算法
区块链 + AI:一个负责“信任”,一个负责“聪明”,能不能真结婚?
区块链 + AI:一个负责“信任”,一个负责“聪明”,能不能真结婚?
145 12
|
2月前
|
监控 小程序 Java
2025最新商业版代练护航工作室平台搭建/电竞代练护航小程序快速搭建部署解析
本项目为游戏陪练平台全栈开发方案,涵盖基础架构规划、多端功能开发及定制化流程。支持用户、打手、工作室、管理与管事五端,实现订单追踪、佣金结算、人员调度等功能。采用UniApp跨端开发,后端基于Spring Boot或ThinkPHP,部署使用Docker或宝塔面板,兼容高并发场景,具备完善的安全与监控机制。
259 0
|
2月前
|
PHP 开发工具 Android开发
语音房社交软件开发/php开发/社交同城交友/语音房APP开发与社交功能的融合
本文介绍语音社交应用的两种开发路径:定制开发适合有独特需求的大中型企业,功能灵活但成本高、周期长;基于成熟方案快速搭建则适合初创团队,利用声网、腾讯云等RTC厂商的开源Demo,低成本高效启动。同时探讨如何通过轻互动、用户标签、个人主页、语音动态等功能,将语音房临时互动转化为长期社交关系,并强调合规、性能与MVP冷启动策略的重要性。(238字)
185 3
|
4月前
|
数据挖掘 测试技术 图形学
《3D动作游戏受击反馈:从模板化硬直到沉浸式打击感的开发拆解》
本文记录3D动作游戏角色受击反馈系统的开发实践,针对早期依赖引擎模板导致的反馈雷同、硬直僵化等问题展开优化。通过联合多岗位梳理“视觉差异化、物理动态化、音效分层”需求,放弃传统组件,自研受击反馈状态机,实现状态独立配置与优先级切换;构建伤害类型-反馈参数映射表适配不同场景,开发动态硬直判定器平衡攻防体验。经性能优化(特效实例化、粒子分级)与细节打磨(弱点反馈强化、残血感知优化),解决卡顿、反馈不清晰等痛点,最终实现“每一击有重量”的沉浸打击感,为动作游戏受击系统开发提供实用参考。
421 11
|
4月前
|
监控 算法 图形学
《2D角色+3D场景:动漫游戏次元融合的技术突破路径》
本文围绕古风仙侠动漫游戏开发,聚焦2D手绘角色与3D场景的融合难题,针对图层割裂、阴影脱节、透视失真、光照不匹配、多角色性能压力及互动割裂六大问题,分别提出骨骼绑定控制器、动态阴影投射、非线性透视缩放、实时调色、分层渲染、互动姿态匹配六大解决方案。通过差异化参数设置与动态精度调整,在保证动漫风格的同时,解决技术痛点,提升场景沉浸感。
400 3
|
2月前
|
存储 安全 定位技术
交友APP开发搭建/社交软件同城交友推荐匹配
打造社交APP最小可行产品(MVP):支持手机号/微信登录,完善个人资料与兴趣标签。核心匹配采用滑动交友、问卷配对及兴趣群组模式,双向匹配后可聊天。集成腾讯云IM、地图、云存储、短信验证等第三方服务,快速部署上线。通过冷启动运营获取种子用户,结合活动与数据驱动持续迭代优化。
512 1
交友APP开发搭建/社交软件同城交友推荐匹配
|
3月前
|
存储 JavaScript 定位技术
uinapp社交应用方案/文字聊天到音视频通话,再到同城交友匹配的核心社交功能
本系统采用前后端分离架构,UniApp开发跨平台客户端,集成uView UI与腾讯/高德地图SDK,通过Vuex管理状态,UniPush实现消息推送。业务服务器处理核心逻辑,IM系统负责实时信令传输,声网Agora实现音视频通话,通过唯一channelName联动IM与RTC,确保低延迟、高并发的稳定通信,构建高效社交应用。
391 0
uinapp社交应用方案/文字聊天到音视频通话,再到同城交友匹配的核心社交功能
|
5月前
|
存储 消息中间件 人工智能
【08】AI辅助编程完整的安卓二次商业实战-修改消息聊天框背景色-触发聊天让程序异常终止bug牵涉更多聊天消息发送优化处理-优雅草卓伊凡
【08】AI辅助编程完整的安卓二次商业实战-修改消息聊天框背景色-触发聊天让程序异常终止bug牵涉更多聊天消息发送优化处理-优雅草卓伊凡
387 10
【08】AI辅助编程完整的安卓二次商业实战-修改消息聊天框背景色-触发聊天让程序异常终止bug牵涉更多聊天消息发送优化处理-优雅草卓伊凡
|
4月前
|
存储 编解码 并行计算
《3D山地场景渲染进阶:GPU驱动架构下细节与性能平衡的6大技术实践》
本文围绕3D开放世界山地场景渲染,分享GPU驱动架构下平衡地形细节与性能的实践经验。针对传统CPU驱动架构的负载失衡问题,重构Tile-Sector-Patch三级数据结构,将地形计算迁移至GPU,降低CPU耗时;通过自适应压缩与裂缝修复优化四叉树,减少显存占用;设计融合距离与地形复杂度的LOD模型,兼顾细节与效率;借ID Map与三平面渲染优化材质混合,降低带宽消耗;采用Chunk位图与视差贴图实现轻量化动态地形交互;最后通过统一LOD阈值与设备定制参数,实现多系统协同适配。
602 8