Spring(一)

一、Spring框架简介

1.主要发明者:Rod Johnson
2.轮子理论推崇者:

轮子理论:不用重复发明轮子
IT行业:直接使用写好的代码

3.Spring框架的宗旨:不重新发明技术,让原有技术使用起来更加方便
4.几大核心功能:

IOD/DI : 控制反转/依赖注入
AOP:面向切面编程
声明式事务
采用模板的方式对其他技术的支持
Spring的定时器

二、工厂模式

Spring采用工厂模式进行实现,有关该设计模式的知识点我这里不做详细赘述,读者可以自行百度。这里主要说一下:工厂模式是实例化对象的一种设计模式,可以降低对象之间的耦合度,通过工厂对象来解耦,更符合程序设计的开闭原则
工厂模式有几种:

简单工厂
抽象工厂(工厂方法模式)
通用工厂

三、Spring环境搭建

1.导入jar包
Spring(一)_第1张图片
图片1.png
2.创建Spring的配置文件

2.1 Spring的配置文件可以叫任意的名字,默认习惯于叫applicationContext.xml
2.2 Spring的配置文件可以在项目的任意位置,一般默认地会放在src的根目录下。

如果没有添加约束文件,需要自己手动或者联网状态下载Spring配置文件

3.在Spring的配置文件中通过标签来告知Spring管理哪个对象的生命周期。

其中有两个属性:
id表示唯一的一个标记,命名不可以重复;
ckass表示把具体的哪个类实例化

4.启动Spring框架

需要注意以下几个问题:

1.启动时指定创建哪个IOC容器
2.BeanFactry:基本的IOC容器。只是缓存对象。
3.ApplicationContext:高级IOC容器。是beanFactory的子接口 扩展了BeanFactory的能力。添加了如 解析properties 国际化等处理

四、IOC详解

1.IOC(Inversion of control)控制反转
2.控制:实例化对象的过程
3.反转:原来实例化一个对象的过程它的控制权是掌握在程序员手中的,而现在整个对象创建过程完全交给Spring来负责。
4.容器并不是指的web容器(Tomcat),它不能处理请求,该容器是指Spring缓存对象的集合(Map

五、Spring创建bean的三种方式(包含两种工厂方式)

1.首先我们来说一下BeanFactory与ApplicationContext对象的区别

1.1创建对象的时间
BeanFactory是在调用getBean方法时先去创建对象
ApplicationContext是在启动spring框架时就将所有的对象创建好。
1.2能力上的区别
BeanFactory只是一个基本的IOC容器,只能缓存对象,没有的额外的能力。
ApplicaitonContenxt可以操作properties,国际化等。

2.使用无参的构造方法
Spring的配置文件

 

3.使工厂模式来创建对象


    
    
    
    

4.使用工厂中的静态方法来获取对象


    

六、scope属性详解

scope属性是spring配置文件中标签的属性,它决定了采用什么方式来创建对象(单例、多例)

scope的取值范围:
Prototype:多例
Singleton:单例(默认)

七、DI详解与Spring的几种注入方式

1.DI:dependency injection 依赖注入
2.使用构造方法来完成值的注入

其中:
index:表示构造方法中的参数的位置,从0开始
name:按照构造方法的参数的名称完成注入
type:根据类型匹配位置
value:注入的值(value一般用于存放基本数据类型+String)

3.基于属性的注入方式

注意:
要求类中必须要含有一个无参的构造方法
要求属性必须提供set方法
例如:


        
        
4.注入其他类型
4.1注入set类型

        
        
             
                a
                b
                c
             
        
        
4.2注入List类型

        
            
                aa
                bb
                cc
            
        
          
4.3注入Map类型

        
            
                
                    aaa
                
                
                    bbb
                
            
        
          
4.4注入proprties
 
        
            
                
                aaaa
                
                
                 bbbb
                
            
        
    
4.5注入springIOC容器中的对象

要求注入的对象与被注入的对象都需要在IOC容器中存在



        
            
        

八、Spring解析properties配置文件

1.通过在spring的配置文件中开启操作properties文件的工具类
  
  
    
        /config.properties
    
  
2.使用命名空间开启这个工具类

你可能感兴趣的:(Spring(一))