Spring是一种Java框架,用于开发企业级Java应用程序。Spring框架提供了许多功能,其中包括IOC容器和DI依赖注入。IOC容器是Spring框架中的一个核心概念,它用于存储对象。在Spring中,Bean是存储在容器中的对象。Bean是由Spring容器创建、组装和管理的对象。IOC容器可以自动地将Bean注入到其他对象中。这种自动注入的方式称为DI依赖注入。
在Spring框架中,对象之间的耦合度是很低的。DI依赖注入使得对象之间的耦合度更低。Spring框架提供了多个实现DI依赖注入的方法,其中最常用的是Setter注入和构造函数注入。
本文提供了一个Spring框架的入门案例,该案例包括一个基于IOC的入门案例和一个基于DI的入门案例。在基于IOC的入门案例中,我们首先分析了Spring框架的思路,然后实现了一个简单的案例。在案例中,我们首先配置了Spring的pom.xml文件,然后创建了一个Maven项目。接着,我们创建了四个类:BookDao、BookDaoImpl、BookService和BookServiceImpl,并在resources文件夹下创建了一个Spring配置文件applicationContext.xml。最后,我们使用Spring提供的接口创建了IOC容器,并从容器中获取对象进行方法调用。
在基于DI的入门案例中,我们删除了业务层中使用new的方式创建的dao对象,并在业务层提供了BookDao的setter方法。然后,我们在配置文件中添加了依赖注入的配置,并运行程序测试它是否正常工作。
在总体上,本文提供了一个入门级别的介绍,使得新手能够更好地了解Spring框架的核心概念和用法。同时,本文提供的案例也能够帮助读者更好地理解Spring框架的实际应用。
对于一门新技术,我们需要从为什么要学
、学什么
以及怎么学
这三个方向入手来学习。那对于Spring来说:
说明:对于未使用Spring的项目一般都是些比较老的项目,大多都处于维护阶段。
从专业角度看
综上所述,==Spring是一款非常优秀而且功能强大的框架,不仅要学,而且还要学好。==
从上面的介绍中,我们可以看到Spring框架主要的优势是在简化开发
和框架整合
上,至于如何实现就是咱们要学习Spring框架的主要内容:
简化开发: Spring框架中提供了两个大的核心技术,分别是:
1.Spring的简化操作都是基于这两块内容,所以这也是Spring学习中最为重要的两个知识点。
2.事务处理属于Spring中AOP的具体应用,可以简化项目中的事务管理,也是Spring技术中的一大亮点。
框架整合: Spring在框架整合这块已经做到了极致,它可以整合市面上几乎所有主流框架,比如:
这些框架中,我们目前只学习了MyBatis,所以在Spring框架的学习中,主要是学习如何整合MyBatis。
综上所述,对于Spring的学习,主要学习四块内容:
==(1)IOC,(2)整合Mybatis(IOC的具体应用),(3)AOP,(4)声明式事务(AOP的具体应用)==
思想
上。介绍完为什么要学
、学什么
和怎么学
Spring框架后,大家需要重点掌握的是:
接下来,咱们就开始进入Spring框架的学习。
在这一节,主要通过以下两个点来了解下Spring:
Projects
中查看其包含的所有技术。Spring已形成了完整的生态圈,也就是说我们可以完全使用Spring技术完成整个项目的构建、设计与开发。
Spring有若干个项目,可以根据需要自行选择,把这些个项目组合起来,起了一个名称叫==全家桶==,如下图所示
说明:
图中的图标都代表什么含义,可以进入https://spring.io/projects
网站进行对比查看。
这些技术并不是所有的都需要学习,额外需要重点关注Spring Framework
、SpringBoot
和SpringCloud
:
除了上面的这三个技术外,还有很多其他的技术,也比较流行,如SpringData,SpringSecurity等,这些都可以被应用在我们的项目中。我们今天所学习的Spring其实指的是==Spring Framework==。
接下来我们介绍下Spring Framework这个技术是如何来的呢?
Spring发展史
Expert One-on-One J2EE Design and Development
,书中有阐述在开发中使用EJB该如何做。Expert One-on-One J2EE Development without EJB
,书中提出了比EJB思想更高效的实现方案,并且在同年将方案进行了具体的落地实现,这个实现就是Spring1.0。本节介绍了Spring家族与Spring的发展史,需要大家重点掌握的是:
前面我们说spring指的是Spring Framework,那么它其中都包含哪些内容以及我们该如何学习这个框架?
针对这些问题,我们将从系统架构图
和课程学习路线
来进行说明:
介绍完Spring的体系结构后,从中我们可以得出对于Spring的学习主要包含四部分内容,分别是: