我对spring的理解

一:首先Spring是一个javaee、轻量级一站式企业级开发框架

        一站式:即Spring框架涵盖视图层、控制层、持久层的所有相关技术,使用Spring就可以独立完成企业级项目的开。

        轻量级:在众多的组件中,我们只需要使用四个核心组件就可以使用Spring做开发,至于其他的组件,需要的时候我们就添加,不需要的时候就移除。

                         4个核心jar包如下:beans    context    core    expression    但还需要一个logging支持

 

二:spring一般用于1管理对象     2整合其他框架(基于IOC实现)

        IOC:就是控制反转,即将代码调用的控制权,由调用方移交给被调用方。

         IOC实现的基础:(1)基于面向接口编程    (2)基于依赖注入

 

三:依赖注入(DI):所谓的依赖的注入,就是通过接口或者类来引用对象,从而不需要通过new这种方式获取实例对象

        3.1依赖注入的方式

                1.Set方法注入set注入的时候,是根据set方法名来注入。比如set方式格式是setUsername,则注入的时候,属性的名称是username

                2.构造方法注入:必须存在对应的构造方法。通过<constructor-arg>

               注入方式:(1)根据构造方法上参数的顺序。(bean标签的index属性执行)

                                (2)根据构造方法上参数的名称。(bean标签的name属性指定)

        3.2​​​​​​​依赖注入的注意事项

        针对对象的属性类型不同,注入的方式也不同。

        (1)标量类型(基础数据类型及其包装类+String),通过value属性直接指定

        (2)对于对象类型,则通过ref属性来进行引用注入。

        (3)集合类型的注入,Spring则提供了一组针对集合类型注入的标签,如<set>、<list>、<map>、<properties>、<array>等。

    

四:Spring对properties文件的支持

        (1)通过PropertySourcesPlaceholderConfigurer来加载配置文件。

        (2)通过${key}去获取配置文件对应的值。

注意:Spring提供了一个context标签,用来解决properties文件的快速加载。

      <context:property-placeholder            file-encoding="utf-8" location="classpath:source.properties" 

 

五:Spring创建对象的几种方式

            5.1.通过class直接创建

<bean name="customerService" class="cn.spring.service.impl.CustomerServiceImpl"></bean>

            5.2​​​​​​​.通过工厂设计模式来创建

                (1)不是直接创建对象,而是先获取对应工厂类,由工厂统一创建。

                (2)在批量创建对象的时候,通过工厂给初始化的对象设置通用属性。

 

六:Spring对象的生命周期

        6.1.Singlton:单例模式(默认)

        (1)随着容器创建而初始化一次

        (2)只要容器存在,对象一直存在。

        (3)随着容器的销毁而销毁

​​​​​​​         6.2.Prototype:原型模式,即每次从容器获取对象的时候,都初始化一个新的对象出来。

        (1)从容器获取得时候创建。

        (2)在被调用的期间存活。

        (3)长时间不被调用的情况下,被垃圾回收器所回收,不受容器管理。

 

 

转载于:https://my.oschina.net/u/4117393/blog/3037376

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值