Spring框架下获取Bean的几种方式

Spring框架下获取Bean的几种方式,第1张

第一种方式:FileSystemXmlApplicationContext通过程序在初始化的时候,导入Bean配置文件,然后得到Bean实例:ApplicationContextac=newFileSystemXmlApplicationContext(applicationContextxml)acgetBean(beanName);第二种方式:WebApplicationContextUtil在B/S系统中,通常在webxml初始化bean的配置文件,然后由WebAppliCationContextUtil得到ApplicationContext例如:ApplicationContextctx=WebApplicationContextUtilsgetRequiredWebApplicationContext(ServletContextsc);ApplicationContextctx=WebApplicationContextUtilsgetWebApplicationContext(ServletContextsc);其中servletContext sc 可以具体 换成 servletgetServletContext()或者 thisgetServletContext()或者requestgetSession()getServletContext();另外,由于spring是注入的对象放在ServletContext中的,所以可以直接在ServletContext取出WebApplicationContext 对象:WebApplicationContext webApplicationContext = (WebApplicationContext) servletContextgetAttribute(WebApplicationContextROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);下面几种方式没有用过,

一、SpringMVC带的有两种方式:

ModelMap,大概用法:

@RequestMapping(value = "method1")

public String imports(>

写一个类,实现BeanFactoryAware接口,把该接口配置到spring中,然后把getbean方法写成静态的,就可以动态获取了。下面是示例:

Java代码

public class Springfactory implements BeanFactoryAware {

private static BeanFactory beanFactory;

// private static ApplicationContext context;

public void setBeanFactory(BeanFactory factory) throws BeansException {

thisbeanFactory = factory;

}

/

根据beanName名字取得bean

@param beanName

@return

/

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

if (null != beanFactory) {

return (T) beanFactorygetBean(beanName);

}

return null;

}

}

使用的时候,通过SpringfactorygetBean("beanName"),就可以获取到bean了。注意:这个是静态方法,直接通过类名去调用。

以上就是关于Spring框架下获取Bean的几种方式全部的内容,包括:Spring框架下获取Bean的几种方式、spring mvc里,jsp中怎么获取bean、如何从当前spring容器中获得bean等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9345665.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存