知识大全 直接召唤系与IoC fashion使用Spring
Posted 框架
篇首语:书卷多情似故人,晨昏忧乐每相亲。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 直接召唤系与IoC fashion使用Spring相关的知识,希望对你有一定的参考价值。
直接召唤系与IoC fashion使用Spring 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Spring再强大 也要面对降临的问题 因为Spring不是Weblogic Tomcat般的顶层容器 Servlet和EJB对象不由它创建 所以它必须要降临到Weblogic Tomcat所在的位面 初学者一般不用管那么多 照着Spring+hibernate+Struts之类的Sample就做了 但慢慢的 也许就要开始在jsp+javabean体系 土制框架 Singleton类等环境下使用Spring了 《Professional Java Development with the Spring Framework》第 章有 Managing the Containe 一节讲这个问题 一般可以分为直接召唤系与IoC fashion两类
直接召唤系 Singleton的Application Context 最简单的 就像在UnitTest里那样 直接构造Application Context
ApplicationContext ctx = new ClasspathXmlApplicationContext( ApplicationContext xml ); 在Web环境里 会使用ContextLoader构造ApplicationContext后 压进Servlet Context 由ContextLoaderListener或ContextLoaderServlet 在Web应用启动时完成 然后在Jsp/Servelet中 可以通过Servlet Context取得ApplicationContext ApplicationContext context = WebApplicationContextUtils getWebApplicationContext(application); 但像Singleton类或者EJB中 就没有Servlet Context可用了 如果全部像UnitTest那样直接构造 速度就会很不堪 自然的 就想到把ApplicationContext做成单例 Spring提供了ContextSingletonBeanFactoryLocator这样的物体 先搞一个beanRefFactory xml 里面写上所有的applcationContext * xml文件名 并把Context命名为 default context <beans> <bean id= default context class= ntext support ClassPathXmlApplicationContext > <constructor arg> <list> <value>applicationContext xml</value></list> </constructor arg> </bean></beans> 然后让loactor去找它 但代码有点长 BeanFactoryReference bfr = DefaultLocatorFactory getInstance() useBeanFactory( default context );BeanFactory factory = bfr getFactory();MyService myService = factory getBean( myService );bfr release();// now use myService
上面的代码实在是太灵活 太麻烦了 还不如自己实现一个简单的Singleton 扩展ContextLoaderListener类 在Web系统启动时压入Singleton
新的ContextLoaderListener类重载如下 ContextUtil中包含一个静态的ApplicationContext变量 public void contextInitialized(ServletContextEvent event) ntextInitialized(event);
ServletContext context = event getServletContext(); ApplicationContext ctx = WebApplicationContextUtils getRequiredWebApplicationContext(context); ContextUtil setContext(ctx); 用家可直接取用 ApplicationContext context = ContextUtil getContext();
IoC fashion 如果所有地方都使用直接召唤系 那就反而是在打Rod的耳光了 因为他一直都反对代码与框架深耦合的 所以 更好的方法是写一些glue code base class来完成Spring的降临 而不让应用代码察觉Spring Application Context的存在 不过 因为各个框架的结构不同 Rod也没办法讲出一个通用的整合方法 所以建议大家尽量学习已整合的各种框架 如Spring MVC Struts的种种方式 写出自己的简单整合代码来
cha138/Article/program/Java/ky/201311/28173相关参考
利用丹340变异选育衍生系丹340玉米自交系是通过栽培玉米与有稃玉米杂交,并经钴60Coγ射线辐射处理后,利用辐射诱变,创造新变异而选育成功的,它的后代有不同程度的分离,育种者利用后代变异直接选育出L
用代码学习Spring:IoC、AOP 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  
对IOC和DI的理解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 首先说一下什么是IOC和DI
Spring控制反转(IoC)容器 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! (二)个人整理
Spring中IoC的入门实例详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Spring的
知识大全 Spring的IoC学习笔记之BeanFactoryPostProcessor
Spring的IoC学习笔记之BeanFactoryPostProcessor 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,
SpringIOC配置与应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nbs
口腔菌系是由口腔中各种细菌共同组成的。口腔中的细菌种类繁多,可以这样说,空气中有多少种细菌,口腔中就有多少种细菌。除此之外,口腔细菌还可来源于水和食物。 有专家作过研究,认为口腔中的细菌具有致病性的
spring,ioc模式与ejb3的SLSB实现 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 轻量级IoC容器来扩展ANT享受SPRING(图)
轻量级IoC容器来扩展ANT享受SPRING(图) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!