重现spring 七大模块

重现spring  七大模块
  1.Spring--Core 模块(反向控制inversion of Control)(依赖注入 DI(dependency injection))
  2 Spring--AOP 模块
  3 Spring--ORM 模块
  4 Spring--DAO模块
        Dao 模块提供对jdbc的支持,对jdbc进行了封转,允许jdbc使用Spring资源,并能统一管理jdbc的事务,
        Spring 不知道提不提供对jdbc的实现


  5 Spring--Web模块
         web模块提供对Struts WebWork JSF 等各种web框架的支持,Spring能管理这些框架,将spring 的资源如数据源,
         bean 等注射给框架也能在执行框架方法前后插入spring的拦截器

  6 Spring--Context模块
         Context 模块提供框架式 bean访问模式,其他程序通过Context访问Spring 的bean资源,类似于JNDI

  7 Spring--Web MVC模块
         开发者可以选择Struts作为mvc框架,也可以使用Spring自带的mvc框架,Srping MVC 与struts等框架
         相比,更加简洁,灵活。

----------------------------------------------------------------
Spring--Core 模块

              1实例化BeanFactory
              2工厂模式 Factory-method
              3构造函数constructor-arg
              4单态模式每次请求bean都会创建一个bean对象
              5配置property 属性
              6设置对象属性<ref> 用于bean之间的相互引用 可以出现在 <property> <constructor-arg>
                还可以出现在其他地方 还有local使用ben配置文件中的bean parent使用父配置文件中的bean
              7 配置 list 属性<list>  <list> 配置java.util.list 类型的属性 list属性中可以配置任意类型对象
              8配置<set>属性 java.util.set 和list差不多 如果为java对象 则使用<ref>
                 <property name="someSet">
                            <value> string ,Integer,.... </value>
                            <ref bean="myDatasource"></ref>
                    </property>
              9配置Map属性<map>
                    <property name="someMap">
                         <map>
                             <entry key="yu">
                               <value>just some string</value>
                             </entry>
                             <entry key-ref="myDatasource">
                                      <ref bean="serviceImpl"></ref>
                             </entry>
                         </map>
                    </property>
               10 配置<properties>属性 <props>
                      <property name="props">
                        <props>
                              <prop key="url">http://www.baidu.com</prop>
                              <prop key="name">hell word guohailin</prop>
                        </props>
                     <property>
             11 <idref> And <ref>的区别
                 用法几乎相同 idref(bean ,local) 没有parent
                 spring 在加载xml配置文件时会检查<idref>bean存不存在,ref只会在第一次调用时才会被检查
             12 设置destroy-method 销毁方法
                  有的对象在执行完毕之后需要close()方法释放资源
                  <bean id="datasource" class="org.apache.commons.dbcp.BasicDatasource" destory-method="close">
                     
                  </bean>
             13 设置depends-on 依赖对象
                <bean id="A" class="exaple.A" depends-on="B"/> 加载a之前先加载b
                <bean id="B" class="exaple.B"></bean>
             14     初始化方法 init-method
                    <bean id="c" class="example.C" init-method="init">
         b  属性自动装配
          属性覆盖器 PropertyOverriedConfigurer
            <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<!-- 指定连接数据库的驱动 -->
<property name="driverClass" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
<!-- 指定连接数据库的URL -->
<property name="jdbcUrl" value="${jdbc.url}" />
<!-- 指定连接数据库的用户名 -->
<property name="user" value="${jdbc.user}" />
<!-- 指定连接数据库的密码 -->
<property name="password" value="${jdbc.password}" />
<!-- 指定连接数据库连接池的最大连接数 -->
<property name="maxPoolSize" value="${jdbc.maxPoolSize}" />
            </bean>
总结:
Spring  Core 模块是最核心 最基础的模块,实现加载配置文件,管理,初始化bean等 功能 及数据源的配置,

你可能感兴趣的:(spring,框架,bean,mvc,配置管理)