葵恩的学习笔记

导航

Spring(一)

一、Spring概述

  Spring是分层的JAVA se/ee 应用,full-stack轻量级开源框架,以IoC(Inverse of control 反转控制)和AOP(Aspect Oriented Programming 面向切面编程)为内核,提供了展现层SpringMVC和持久层Spring JDBC以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的JAVA EE企业应用开源框架。

Spring的特点

Spring模块功能

Spring的优势

1、Spring优势

  在了解什么是Spring优势之前,我们应该了解几个重要的程序的耦合和解耦。

  耦合度指模块间的依赖关系,包括控制关系、调用关系、数据的传递关系。耦合度的强弱取决于模块间接口的复杂性,调用模块的方式以及通过界面传送数据的多少。在软件工程中,对象之间的耦合越高,其维护成本越高。  v 

1)方便解耦,简化开发

  通过Spring提供的IoC容器,可以将对象间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合,用户也不必再为单例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。

2)AOP编程支持

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

3 )声明式事务的支持

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

4) 方便程序的测试

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

5) 方便集成各种优秀框架Spring可以降低各种框架的使用难度,提供了对各种优秀框架(Struts、Hibernate、Hessian、Quartz等)的直接支持。

6) 降低JavaEE API的使用难度

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

7) Java源码是经典学习范例

  Spring的源代码设计精妙、结构清晰、匠心独用,处处体现着大师对Java设计模式灵活运用以及对Java技术的高深造诣。它的源代码无意是Java技术的最佳实践的范例。

二、程序的耦合及解耦

  耦合性(Coupling),也叫耦合度,是对模块间关联程度的度量。在软件工程中,耦合指的就是就是对象之间的依赖性。对象之间的耦合越高,维护成本越高。因此对象的设计应使类和构件之间的耦合最小。划分模块的一个准则就是高内聚低耦合

  工厂模式解耦

  控制反转:把创建对象的权力交给框架,是框架的重要特征,包括依赖注入DI和依赖查找dependency lookup。

  作用:削减计算机程序的耦合

 
四、依赖注入
  参考:https://www.zhihu.com/search?q=Spring&utm_content=search_history&type=content
  一种设计模式理念,项目中使用DI会使代码变得简单且容易理解和测试。它是Spring框架核心IoC的具体实现。
  原因:在JAVA语言中,由于静态import不能引入已经初始化好的object,但在系统开发中无论如何都要解决Object的管理和组织问题,所以必然需要某种注入框架来完成这个工作。
  DI实现,1、构造函数注入;2、set方法注入(实际开发中常用);3、使用P名称空间注入数据;4、注入集合属性;
 
五、练习
 

posted on 2021-02-07 16:43  葵恩  阅读(52)  评论(0)    收藏  举报