Spring学习笔记

学习内容:

  1. Spring概述
  2. Spring优点
  3. 如何使用IOC
  4. IOC底层原理
  5. IOC特性
  6. Spring的工程方法
  7. IOC的自动装载

学习笔记:

1. Spring概述

  • Spring是什么/p>

    • Spring是一个企业级开发框架,是软件设计层面的框架,优势在于可以将应用程序进行分层,开发者可以自主选择组件。
    • Spring已经成为Java领域的行业标准
    • Spring全家桶:
      • Web:Spring Web MVC/Spring MVC 、Spring Web Flux
      • 持久层:Spring Data/Spring Data JPA 、Spring Data Redis、 Spring Data MongoDB
      • 安全校验:Spring Security
      • 建构工程脚手架:Spring Boot
      • 微服务:Spring Cloud
  • Spring两大核心机制:

    • IOC(控制反转)/DI(依赖注入)

IOC是Spring全家桶各个功能模块的基础,是创建对象的容器

  • AOP(面向切面编程)

2. Spring的优点:

  • 低侵入式设计

使得代码污染性极低,应用程序对Spring API的依赖可以减至最小限度

  • 独立于各种应用服务器
  • 依赖注入特性将组件关系透明化,降低了耦合度。

Spring就是一个大工厂,可以将所有对象的创建和依赖关系的维护工作都交给Spring容器的管理,大大的降低了组件之间的耦合性。

  • 支持AOP

面向切面编程特性允许将通用任务如安全、事物、日志等进行集中式处理,从而提高了程序的复用性。

  • 与第三方框架的良好整合

Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如Struts、Hibernate、MyBatis、Quartz等)的直接支持

3.如何使用IOC

在使用之前我们需要了解什么叫做控制反转:

传统的程序开发中,需要调用对象时,通常由调用者来创建被调用者的实例,即对象是由调用者主动new出来的,而在Spring框架中创建对象的工作时不再由调用者完成,而是交由IOC容器来创建,再推送给调用者。

如何使用IOC:

  1. 创建Maven工程,pom.xml添加依赖
  1. 创建实体类Student
  1. 传统的开发方式,手动new

此处需要导入lombok的jar包,用来简化实体类的开发
需要首先从 上下载lombok-1.18.6.jar版本,配置到pom.xml里
配置好后找到jar的本地位置,通过CMD命令执行安装。
命令:java -jar lombok-1.18.6.jar
配置好后,对于实体类,不需要再实装set/get方法和toString方法,即可直接调用。
添加方法:

  1. 通过IOC创建对象,在配置文件中添加需要管理的对象,XML格式的配置文件,文件名可自定义
    关于配置文件:
  • 通过配置bean标签来完成对象管理
    • id ≈ 对象名
    • class ≈ 对象的模板类(所有交给IOC容器来管理的类必须有无参构造函数,因为Spring底层是通过反射机制来创建对象。调用的是无参构造)
    • 对象的成员变量通过property标签完成赋值
      • name:成员变量名
      • value:成员变量值(基本数据类型,String可以直接赋值,如果是其他引用类型,不能通过value赋值)
      • ref: 将IOC中的另外一个bean赋给当前的成员变量(DI)

(如果有其他引用类型:)

  1. 从IOC中获取对象

如果没有无参构造方法,运行时会 以下错误:
Causedby:java.lang.NoSuchMethodException:com.hbb.entity.Student.init()
补充:lombok的@AllArgsConstructor标签可用来添加有参构造方法

结果:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年7月3日
下一篇 2022年7月3日

相关推荐