【良少的专栏】

余好读书,乐思善疑。有过目不忘之能,亦有掩卷即忘之病,故尝攥文以记之。

用户操作
[即时聊天] [发私信] [加为好友]
沈东良ID:shendl
254859次访问,排名242好友5人,关注者110
shendl的文章
原创 110 篇
翻译 4 篇
转载 20 篇
评论 581 篇
沈东良的公告

遭遇骗子恶意欺诈,奋战中!!!

最近评论
domemy:Linux 环境下的多核调试
— Intel + Totalview 强强联合!
目前,在软件开发行业,各种性能优异的调试工具层出不穷。但是,它们中的绝大部分都只支持windows环境。即使能支持linux平台,操作起来也很不方便。因此,对于长期在linux上编写程序的开发人员来说,如何调试就成了一个令人头痛的问题!Intel软件 和 Total……
shendl:我好象是做成PDF放到CSDN的下载中心了
conan2086:这篇文章很好!可以做成DOC发到CSDN上吗?
方便收藏!最好再把新的心得写进去!
xiangjun_yu:在sun公司下载了三四次 都下载的不完全
不知道什么原因。
谢谢你的资源了。
xiangjun_yu:在sun公司下载了三四次 都下载的不完全
不知道什么原因。
谢谢你的资源了。
文章分类
收藏
    相册
    blog图片
    我的照片
    推荐Blog
    CSDN专家群(RSS)
    博客周刊(RSS)
    张孝祥专栏(RSS)
    我的CSDN作家区
    杨洪波(RSS)
    许式伟的专栏(RSS)
    谭振林(RSS)
    银狐999(RSS)
    阿蒙专栏(RSS)
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 局部变量也能使用Spring工厂得到对象收藏

    新一篇: Swing程序最佳架构设计—以业务对象为中心的MVC模式 | 旧一篇: MySQL数据库编码问题全面解析

      
                                  局部变量也能使用Spring工厂得到对象
     
     
     
    Spring是一种IOC(依赖注入)容器,它是创建型模式的最高级应用。GOF的23种设计模式,分为3类:创建型模式,结构型模式,行为型模式。创建型模式是为了得到Java对象的一类设计模式。
    Spring使用xml配置文件,在运行时,动态生成Java对象。现在,也可以使用标注的形式进行配置。
    我们知道,java的反射,只能够获知类的属性和方法的一些运行时特性,但是无法知道局部变量的特性。
    因此,Spring只能够使用自动装配Java类的属性。如果我们需要创建局部变量的实例,那么Spring是无法帮助我们自动创建的!
    这怎么办呢?难道我们的局部变量就不能使用IOC容器了吗?不能利用创建型模式的优点了吗?
    办法还是有的。既然Spring无法在运行时为我们自动创建和装配局部变量所需的对象,我们可以手工指定从Spring容器中得到对象。
    一个使用Spring的应用程序,会有一个ApplicationContext类型的对象代表Spring容器。我们完全可以得到这个ApplicationContext对象的引用。在程序中直接使用它来通过Spring容器得到所需的对象。
    如,我们把ApplicaitonContext对象的引用放置在一个类的静态变量中为我所用,如,我们自建的SPringUtil类的.getBean(“”)方法等价于ApplicationContext.getBean(“”)方法。
    现在,在局部变量中,我们可以使用SpringUtil.getBean(“”)的方法,从Spring容器中得到对象。
    虽然,现在在源代码中出现了配置字符,但是,我们可以通过修改Spring配置文件达到避免修改源代码的效果。
    而且,我们的源代码还没有和Spring绑定。因为SpringUtil类是我们自定义的一个类,通过修改其实现,我们完全可以使用其它IOC容器来提供创建对象的功能。
    另一个需要注意的地方是,通常,我们创建的局部变量,一般都是多例的。我们希望每一次都创建一个新的对象。
    这在Spring配置中,需要提供属性:scope="prototype"
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    发表于 @ 2007年01月31日 00:16:00|评论(loading...)|编辑

    新一篇: Swing程序最佳架构设计—以业务对象为中心的MVC模式 | 旧一篇: MySQL数据库编码问题全面解析

    评论:没有评论。

    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © 沈东良