Spring框架学习笔记

Spring框架学习笔记,第1张

Spring框架学习笔记

目录

第一章:Spring框架概述

1.1、概述

1.2、优点

第二章、ioc控制反转

2.1、ioc的概念

2.2、ioc实现步骤

2.3、Spring创建对象机制

2.4、使用容器给对象赋值

2.5、基于XML的DI



第一章:Spring框架概述 1.1、概述

        Spring出现在2002年左右,解决了企业开发的难度,减轻对项目模块之间的管理,类和类之间的管理,帮助开发人员创建对象,管理对象之间的关系。Spring核心计算ioc、aop。能够实现模块之间,类之间的解耦合。

1.2、优点

1)轻量:Spring的所需要的jar包都非常小,一般1M以下,几百kb。核心功能所需要的jar包总共3M左右。Spring框架运行占有资源少,运行效率高,不依赖其他jar。
2) 针对接口编程,解耦合
3) AOP 编程的支持
4) 方便集成各种优秀框架

第二章、ioc控制反转 2.1、ioc的概念

1)Spring的第一个核心功能 ioc

2)ioc :控制反转,是一个理论,概念,思想。

描述的:把对象的创建,赋值,管理工作都交给代码之外的容器实现,也就是对象的创建是有其它外部资源完成的。

控制:创建对象,对象的属性赋值,对象之间的关系管理

反转:把原来的开发人员管理,创建对象的权限转移给代码之外的容器实现,由容器代替开发人员管理对象,创建对象,给对象赋值

正转:由开发人员在代码中,使用new构造方创建对象,开发人员主动管理对象

容器:可以是一个服务器软件,也可以是一个框架

2.2、ioc实现步骤
  1. 创建maven项目

  2. 加入maven的依赖

     
    org.springframework 
    spring-context 
    5.2.5.RELEASE
    
  3. 创建类(接口和他的实现类)

    接口:
    public interface SomeService {
        void sout();
    }
    -----------------------------------------------------
    接口的实现类:
    public class SomeServiceimp implements SomeService {
        @Override
        public void sout() {
            System.out.println("SomeServiceimp类被创建了");
        }
    }
  4. 创建Spring需要使用的配置文件,声明类的信息,这些类由Spring创建和管理

    
    
        
        
    
    

2.3、Spring创建对象机制

        1)在配置文件中声明对象



    

        2)运行代码的时候使用:ApplicationContext 接口(容器)

              ApplicationContext 用于加载 Spring 的配置文件,在程序中充当“容器”的角色

             然后使用ClassPathXmlApplicationContext 实现类进行加载

    @Test
    public void stou1(){
        //1、指定spring配置文件的名称(搜索从根目录开始)
        String config = "beans.xml";
        //ApplicationCintext就是表示spring容器,通过容器获取对象
        //ClassPathXmlApplicationContext:表示从类路径中加载spring的配置文件
        ApplicationContext ac = new ClassPathXmlApplicationContext(config);
        //从容器中获取某个对象,你要调用容器对象的方法
        //getBean(配置文件中的bean的id值)
        SomeService someService = (SomeService) ac.getBean("配置文件中id的值");
        //使用spring创建好的对象,调用对象中的方法
        someService.sout();
        
    }
}

        3)当代码执行到ClassPathXmlApplicationContext(config);时候会去读取spring的配置文件会去创建配置文件中的标签关联的所有类,也就是说当,ClassPathXmlApp..方法被执行的时候,对象已经创建完毕了

获取对象数量:getBeanDefinitionCout();

获取对象名称:getBeanDefinitionNames();返回的是一个数组

2.4、使用容器给对象赋值

        1)在Spring的容器中给java对象的属性赋值使用DI

              DI:依赖注入,表示创建对象,给属性赋值

        2)DI的实现语法有两种:                   

                1、使用Spring的配置文件中,使用标签和属性完成,叫做基于xml的di实现

                2、使用Spring中的注解,完成属性赋值,叫做基于注解的di实现

        3)di的语法分类:

                1、set注入(设值注入):Spring调用类的set方法,在set方法可以实现属性赋值

                2、构造注入:Spring调用类的有参构造方法,创建对象,在构造方法中完成赋值

2.5、基于XML的DI

        1)简单类型的set的设值注入:

              首先需要声明对象,然后通过标签来给类中的属性赋值

        2)简单类型:spring中规定java的基本数据类型和String都是简单类型

        3)语法格式:

                   
                       
                  

注意:一个只能给一个属性赋值而且标准中的属性民需要和类中的属性名一样

 PS:set的设置注入是通过调用类中的set放方法来赋值的,所以声明类中的属性必须要有set方法




    
        
        
    

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5611766.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存