使用 InitializingBean 自定义 bean 初始化逻辑
简介
InitializingBean
是 Spring 框架中的一个接口,提供了一种在 bean 完成属性设置后进行自定义初始化的机制。实现这个接口的类可以在 Spring 容器完成 bean 的属性注入后,执行一些初始化逻辑。下面是接口定义:
public interface InitializingBean { void afterPropertiesSet() throws Exception; }
afterPropertiesSet()
方法会在 bean 属性注入后被调用,此时可以执行自定义的初始化逻辑。
示例:资源初始化
在某些情况下,可能需要在 bean 初始化时加载资源,例如从数据库或文件中加载配置。
import org.springframework.beans.factory.InitializingBean; import org.springframework.stereotype.Component; @Component public class ConfigLoader implements InitializingBean { private String config; @Override public void afterPropertiesSet() throws Exception { // 加载配置 this.config = loadConfig(); System.out.println("Configuration loaded: " + config); } private String loadConfig() { // 实际加载逻辑 return "Sample Config"; } }
在上述代码中,ConfigLoader
实现了InitializingBean
接口,在afterPropertiesSet()
方法中,加载了一个配置,并将其打印出来。
参考:ChatGPT
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏