读书笔记 Spring In Action 4th 第一章 Spring 之旅

第一章的主要内容介绍

  • Spring的bean容器
  • 介绍Spring的核心模块
  • 更为强大的Spring生态系统
  • Spring的新功能

 

Tips: POJO的内在含义是指那些没有从任何类继承、也没有实现任何接口,更没有被其它框架侵入的java对象。

当一个Pojo可序列化,有一个无参的构造函数使用getter和setter方法来访问属性时,他就是一个JavaBean。

 

简化JAVA开发

Spring 目的是解决了企业级应用开发的复杂性,javabean的实现变得简单,全方面的简化java 开发的复杂性

  • 基于POJO的轻量级和最小侵入性编程;
  • 通过依赖注入和面向接口实现松耦合;
  • 基于切面和惯例进行声明式编程;
  • 通过切面和模板减少样板式代码。

 

激发POJO的潜能

Spring 不会强迫实现 Spring 规范的接口,并且类没有任何痕迹表明使用了Spring

eg:一个类或许有Spring 注解,但是仍然是POJO

如图,这是一个简单的JAVA类,POJO没有任何的地方看出使用了Spring

 

依赖注入

传统的做法是,每个对象自己负责管理与自己协作的对象的引用(依赖的对象)。 但是会导致高度耦合和难以测试。

DamselRescuingKnight在它的构造函数中自行创建了Rescue DamselQuest。这使得DamselRescuingKnight紧密地和RescueDamselQuest耦合到了一起。

 

并且编写测试很困难,必须保证当骑士的embarkOnQuest()方法被调用的时候,探险的embark()方法也要被调用。 困难在于无法确保实例quest 已经被创建)

 

耦合具有两面性:一方面使得代码难以测试,复用,难以理解。另一方面,一定程度的耦合是必须的,不然完成不了任何功能(类之间不能交互和调用)。

通过DI 对象的依赖关系由系统中的第三方组件在创建对象的时候设定,对象无需自行的创建和管理依赖关系

如POJO 使用了Spring 注解

Spring 通过DI来进行装配

 

 

猜你喜欢

转载自www.cnblogs.com/frank-QAQ/p/9789077.html