zoukankan      html  css  js  c++  java
  • Spring IoC

    Spring核心容器的理论很简单:Spring容器就是一个超级大工厂,对Spring框架而言,一切Java对象 都是Bean。
    <bean id="xx" calss="xxx">
    <!--控制调用setAxe()方法,将容器中的axe Bean作为传入参数-->
    <property name="axe" ref="axe">
    </bean>
    ....

    <bean id ="axe"......>
    配置文件中的<bean../>元素驱动Spring以反射的方式来调用无参构造器来创建对象。

    Spring框架的核心功能有2个:
    1、Spring容器作为超级大工厂,负责创建、管理所有Bean
    2、Spring使用依赖注入的方式来管理Bean之间的依赖关系

    设置注入:通过setter方法为目标Bean注入依赖关系的方式,上面那种。
    构造注入:每个<constructs-arg ..>子元素代表一个构造器参数,有N个,则表示Spring会调用带N个参数的
    构造器来创建对象:
    <bean id="xx" calss="xxx">
    <!--控制调用setAxe()方法,将容器中的axe Bean作为传入参数-->
    <constructs-arg ref="axe">或者<constructs-arg value="hello">
    </bean>
    这种方式会在Bean创建完成后也完成了依赖关系的注入,比设置注入早?

    Spring有2个核心接口:BeanFactory和他的子接口ApplicationContext ,他们都可以代表Spring容器
    //创建Spring容器,也可以把ApplicationContext 实例赋值给BeanFactory变量
    ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
    系统创建ApplicationContext容器后,接着会默认初始化所有的singleton Bean,可以在<bean...>中指定
    lazy-init="true",懒加载属性用于阻止容器预初始化Bean,但是仍有可能会被预初始化,因为可能被注入到
    一个非延迟的singleton Bean中
    大部分时候使用的是ApplicationContext实例作为Spring容器(Spring上下文),ApplicationContext是BeanFactory的子接口,

    它增强了BeanFactory的功能。

  • 相关阅读:
    部分类Partial
    Ajax之XMLHttpRequest
    C#结构(Struct)
    sql数据管理语句
    mysql基本语句
    bootstrap插件-滚动监听
    一轮项目学习总结
    js滚动监听
    Ajax
    各框架、插件记录
  • 原文地址:https://www.cnblogs.com/gaoxiangde/p/4202572.html
Copyright © 2011-2022 走看看