Spring.Day01.基础

01. Spring 是什么

  Spring 是分层的  Java SE/EE 应用 full-stack 轻量级开源框架; 

  以 ioC (Inverse of Control 反转控制) 和 AOP (Aspect OrientedProgramming 面向切面编程) 为内核

  >> 提供了 展现层 SpringMVC 和 持久层 Spring JDBCTemplate 以及 业务层事务管理 等众多的企业级应用技术,

    还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的 Java EE 企业应用开源框架; 

  >>优势 

    a. 方便解耦,简化开发;

      通过ioc容器,将对象间的依赖关系交由 Spring 进行控制;避免硬编码过程中造成过度耦合;

    b.  AOP编程的支持

      通过 Spring 的AOP功能,方便进行面向切面编程,许多不容易用传统OOP实现的功能可以通过AOP轻松实现;

    c. 声明式事务的支持

      可以将我们从单调的事务管理代码中解脱出来,通过声明式方式灵活的进行事务管理,提高开发效率和质量;

    d. 方便程序的测试

      可以通过非容器依赖的方式进行几乎所有的测试工作,测试不再是昂贵的操作,而是随手可做的事情;

    e. 方便集成各种优秀框架

      Spring 对各种优秀框架的支持;( Struts, Hibernate, Hessian, Quartz等);

    f. 降低JavaEE API 的使用难度;

      Spring 对 JavaEE API (如JDBC, JavaMail, 远程调用等)进行了薄薄的封装,使这些API的使用难度大大的降低;

    g. Java源码是经典的学习范例;

02. Spring  的体系结构

  

 

 03. Spring 的开发步骤

  a. 导入Spring 开发的基本包坐标;

    

 

   b. 编写Dao接口及实现类

    

 

  c. 创建  Spring 配置文件 (文件名随意,但一般大家都命名为 applicatonContext.xml)

    

 

  d. 在核心配置文件中,配置实现类对应的 bean 配置

     

 

   f. 调用 (此时,不再通过  UserDao userDao = new UserDaoImpl() 来获取实例化对象了,而是通过Spring 来获取)

    

 04. bean  标签的参数配置 

  a. id: 唯一标识号;不允许重复

  b. class: 实现类的全限定类名;

  c. scope: 指定对象的作用范围;

    

 

     >> 默认为 singleton :  在加载核心配置文件时,将配置对象进行实例化

      prototype: 在 getBean 时,实例化对象;

      

 

        

 

     

 

  d. 生命周期配置

    

 

 05. Bean实例化的三种方法

  a. 无参构造方法实例化; (掌握)

    (上面的例子,走的都是无参构造的方法);

  b. 工厂 静态 方法实例化;(了解)

    

 

   c.  工厂 实例 方法实例化;(了解)

    

 06. bean标签的依赖注入

  依赖注入 (Dependency Injection): 它是 Spring 框架核心 IOC 的具体体现;

  在编写程序时,通过控制反转,把对象的创建交给了Spring, 但是代码中不可能出现没有依赖的情况,

  IOC 解耦的只是降低它们的依赖关系,但不会消除;如: 业务层仍旧会调用持久层的方法;(Service > Dao)

  > 这种业务层和持久层的依赖关系,在使用Spring 后,就让Spring 来维护了;

  > 简单的说,就是 谁使用,谁创建;而不需要我们再去创建了;

  >> 注入方法:

    a. 构造方法;

      

    b. set方法;

      

 

       

 

     >> 关于set 注入方法的简便方式: P命名空间的方式

      

 07. 注入的数据类型

  a. 普通数据类型; (本质上还是set注入)

    

 

   b. 引用数据类型;

     参照上面引用注入的例子;

  c. 集合数据类型;   

     ** List注入

      

 

    ** Map 注入

      

 

     ** Properties 注入

      

 

 08. 引入其它配置文件

  ** 实际开发中,Spring 的配置内容非常的多,这就导致Spring 配置很繁杂且体积很大,所以,可以将部分配置拆解到其它的配置文件中;

    而在Spring 主配置文件中,通过 import 标签加载其它配置文件;

  <import resource="applicationContext-xxx.xml">

09. 通过类获取实例化对象

  

 

 

 

 

      

  

posted @ 2022-04-12 00:28  耗喜天涯  阅读(17)  评论(0编辑  收藏  举报