一篇文章带你掌握主流基础框架——Spring

一篇文章带你掌握主流基础框架——Spring这篇文章中我们将会介绍Spring的框架以及本体内容 , 包括核心容器 , 注解开发 , AOP以及事务等内容
那么简单说明一下Spring的必要性:

  • Spring技术是JavaEE开发的必备技能 , 企业开发技术选型率高达90%!
  • Spring可以帮助简化开发 , 降低企业级开发的复杂度
  • Spring可以进行框架整合 , 高效整合其他技术 , 提高企业级应用开发与运行效率
Spring的核心内容:
  • Ioc技术
  • DI技术
  • AOP
  • 事务处理
Spring可进行的框架整合:
  • MaBatis
  • MyBatis-plus
  • Struts
  • Struts2
  • Hibernate
在接下来的文章中 , 我们会学习Spring的框架思想 , 学习Spring的基本操作 , 结合案例熟练掌握
温馨提醒:在学习本篇文章前请先学习JavaWeb相关内容
(HTTP , Tomcat , Servlet , Request , Response , MVC , Cookie , Session , Ajax , Vue等内容)
初识Spring官网:Spring | Home
Spring发展至今已经形成了一套开发的生态圈 , Spring提供了相当多的项目 , 每个项目用于完成特定功能
一篇文章带你掌握主流基础框架——Spring

文章插图
我们常用的主流技术包括有:
  • Spring Framework:Spring框架
  • Spring Boot:Spring简化代码开发
  • Spring Cloud:Spring分布设计
Spring FrameWork系统架构在系统学习Spring之前 , 我们需要先来了解FrameWork系统结构
  • Spring FrameWork是Spring生态圈中最基本的项目 , 是其他项目的根基

一篇文章带你掌握主流基础框架——Spring

文章插图
我们现在所使用的Spring FrameWork是4.0版本 , 已经趋于稳定
下面我们对架构图进行解释:
  • Core Container:核心容器
  • AOP:面向切面编程
  • Aspects:AOP思想实现
  • Data Access:数据访问
  • Data Intergration:数据集成
  • Web:Web开发
  • Test:单元测试与集成测试
我们可以在官方中获得如此评价:
  • 强大的基于 JavaBeans 的采用控制反转(Inversion of Control , IoC)原则的配置管理 , 使得应用程序的组建更加快捷简易 。
  • 数据库事务的一般化抽象层 , 允许插件式事务管理器 , 简化事务的划分使之与底层无关 。
  • 一个可用于从 applet 到 Java EE 等不同运行环境的核心 Bean 工厂 。
核心概念介绍首先我们思索一下我们之前的业务层与数据层:
// 数据层接口public interface BookDao {public void save();}// 数据层实现public class BookDaoImpl implements BookDao {public void save() {System.out.println("book dao save ...");}}// 业务层接口public interface BookService {public void save();}// 业务层实现public class BookServiceImpl implements BookService {private BookDao bookDao;public void save() {bookDao.save();}}如果我们修改BookDaoImpl内容 , 那么相对应的业务层实现中的bookDao的new实现也要进行修改 , 甚至下方方法的对象也要进行修改
Spring使用前问题代码书写现状:
  • 耦合度偏高
解放方案:
  • 使用对象时 , 在程序中不要主动使用new产生对象 , 转换为由外部提供对象
Spring思想以及实现IoC(Inversion of Control)控制反转思想:

经验总结扩展阅读