解决方案 »

  1.   

    a.xml, b1.xml, b2.xml 都放到 application.xml
    spring 初始化加载文件
    生命周期,实例都是 spring 管理
    调用分配实例
    你要解决什么问题?
    想如何不加载?
      

  2.   

    或者你在b1 b2中都import a 
    程序中自己控制load b1 还是b2
      

  3.   

    1. 在打包的时候控制,利用ant、Maven,不同的环境打不同的发布包。
    2. 把b1 b2拆成不同的jar包,应用部署的时候,视环境决定将哪个jar包放到classpath里
      

  4.   

    和我遇到的情况差不多http://bbs.csdn.net/topics/390835437
      

  5.   

    楼上说的是对的,这是在打包时决定的,你在xml里是没有办法控制的,除非你重写加载xml的loader,但不建议这样做,因为舍本逐末了。你有一点做的挺对的,就是你的xml你写了三个,我之前的项目就是这么做的,用ant来打包的时候,build不同的xml.
      

  6.   

    那在运行时,通过BeanFactory来加载配置不就行了啊
    没必要搞这么复杂吧
      

  7.   

    首先十分感谢大家的帮忙!
    可能我没表达清楚需求,并不是要延迟加载,其实也不是很难,概括的逻辑是这样:
    1,parent=new context("a.xml")
    2.   判断在那种环境下使用
    3.   child = new context(string【】{b1.xml},parent)或 使用b2.xml这样就可以根据不同情景加载不同的bean了
      

  8.   

    你在xml文件里面import一下就ok了啊