SpringBeanUtil获取Spring Bean

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;

/**
 * @ClassName: SpringBeanUtil
 * @Description: (spring功能类 , 用于获取bean)
 */
@Component
//@Order(Integer.MIN_VALUE)
public class SpringBeanUtil implements ApplicationContextAware {

    protected final static Log logger = LogFactory.getLog(SpringBeanUtil.class);

    private static ApplicationContext ctx = null;

    public void setApplicationContext(ApplicationContext ctx) throws BeansException {

        SpringBeanUtil.ctx = ctx;
    }

    public static ApplicationContext getApplicationContext() {

        return ctx;
    }

    public static <T> T getBean(String prop) {

        Object obj = ctx.getBean(prop);
        if (logger.isDebugEnabled()) {
            logger.debug("property=[" + prop + "],object=[" + obj + "]");
        }
        return (T) obj;
    }
}

posted @   倔强的老铁  阅读(403)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示