工具类从spring里面获取对象

  1. 创建工具类

    /**

    • spring容器的相关方法,如根据名称获取spring实例
    • @author 天真热
    • @create 2022-04-28 9:55
    • @desc
      **/

    import org.springframework.beans.BeansException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    import org.springframework.stereotype.Component;

    @Component
    public class SpringContextUtils implements ApplicationContextAware {
    private static ApplicationContext applicationContext;

    复制代码
     @Override
     public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
         SpringContextUtils.applicationContext = applicationContext;
     }
    
     public static Object getBean(String name) {
         return applicationContext.getBean(name);
     }
    
     public static <T> T getBean(Class<T> requiredType) {
         return applicationContext.getBean(requiredType);
     }
    
     public static <T> T getBean(String name, Class<T> requiredType) {
         return applicationContext.getBean(name, requiredType);
     }
    
     public static boolean containsBean(String name) {
         return applicationContext.containsBean(name);
     }
    
     public static boolean isSingleton(String name) {
         return applicationContext.isSingleton(name);
     }
    
     public static Class<? extends Object> getType(String name) {
         return applicationContext.getType(name);
     }

    }

2.调用

ps:正常我们不指定类注入到spring的名称,默认都是使用"首字母小写的类名"作为名称

复制代码
 TaskRunKafkaLogService taskRunKafkaLogService = (TaskRunKafkaLogService) SpringContextUtils.getBean("taskRunKafkaLogServiceImpl");
相关推荐
小刘在重生~24 分钟前
Java 常用类|包装类 装箱拆箱、Integer 缓存面试题
java·python·缓存
Orange_sparkle28 分钟前
Pi Agent vs LangGraph:从人机交互、企业 RAG 到持久化工作流的完整选型指南
java·网络·人机交互
IT_陈寒1 小时前
React子组件莫名其妙重渲染?你可能漏了这个Hook
前端·人工智能·后端
小兵金林1 小时前
AI 生成代码的思考与实践
后端·ai编程
码事漫谈1 小时前
DeepSeek 明天又降价(涵历史价格对比)
后端
前端精髓1 小时前
NestJS 是什么(对着 Spring Boot 一起学习)
spring boot·后端·学习
国奉1 小时前
从零设计一个 iOS 文件浏览器:Sandbox、FileManager、Document Picker 与文件架构
后端
前端兰博2 小时前
04-数据库-MySQL
后端·mysql
她的男孩2 小时前
接口加密做成框架级能力有多难?我扒了 3600 行源码:从 RSA 握手到落库密文迁移
人工智能·后端·架构
掘金挖土2 小时前
前端手摸手跑路之 AI 应用开发(二)
前端·后端