servlet的filter如何获得spring定义的对象啊。。   高手帮忙

解决方案 »

  1.   

    通过Spring提供的工具类获取ApplicationContext对象
    代码:import org.springframework.web.context.support.WebApplicationContextUtils;
    ApplicationContext ac1 =WebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext sc)
    ApplicationContext ac2 = WebApplicationContextUtils.getWebApplicationContext(ServletContextsc)
    ac1.getBean("beanId");
    ac2.getBean("beanId");
    说明:
    这种方式适合于采用Spring框架的B/S系统,通过ServletContext对象获取ApplicationContext对象,然后在通过它获取需要的类实例。
    上面两个工具方式的区别是,前者在获取失败时抛出异常,后者返回null。