首页 > 编程语言 > 详细

Java普通类中获取Spring管理的实例 几种简单方式

时间:2020-07-20 20:01:23      阅读:95      评论:0      收藏:0      [点我收藏+]

第一种方式依赖于ServletContext,所以要先获取Request

在web.xml中配置springRequest监听器

<listener>
    <listener-class>
        org.springframework.web.context.request.RequestContextListener
    </listener-class>
</listener>

定义个静态方法调用工具类方便调用

public static Object getBean(String name) {
        ServletContext servletContext = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest().getServletContext();
        ApplicationContext ac = WebApplicationContextUtils.getWebApplicationContext(servletContext);
        return ac.getBean(name);
    }

第二种方法不依赖于servlet,不需要注入的方式 注意一点,在服务器启动时,Spring容器初始化时,不能通过以下方法获取Spring 容器

public static Object getBean2(String name) {
        WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
        return wac.getBean(name);
    }

Java普通类中获取Spring管理的实例 几种简单方式

原文:https://www.cnblogs.com/melodyjerry/p/13346144.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!