spring学习笔记-什么是spring?

    技术2022-07-11  74

    1.什么是spring?

    spring是一个开源的、轻量级的java应用程序开发框架,最初是由 Rod Johnson 编写的,并且于 2003 年 6 月首次在 Apache 2.0 许可下发布,它的主要特性是IOC(控制反转)和AOP(面向切面编程)。

    框架:框架就是一些别的大神写好的、可高度复用的代码抽取成的jar文件,你导入到自己的项目,在里面修修改改或者调东调西,然后感觉自己秒天秒地秒空气,java不值得的东西。

    2.spring的特点

    1.低浸入式 spring并不会强制要求项目使用spring的api规范,有时候我们可以忘记我们的项目使用了spring框架。

    例如:我们可以在项目中同时使用依赖注入和手动创建bean对象

    2.IOC(控制反转),便于模块间的解耦 通过Spring提供的IoC容器,我们可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。

    控制反转其实是一个通用的概念,它的意思就是将对象的控制权限从调用对象的类中拿到一个统一的地方(也就是容器)中进行管理的通用说法,而spring所采用的控制反转的方式就是DI(Dependency Injection,依赖注入),目前为止DI应该是控制反转最经典的实现,所以有时DI就等同于IOC了,但其实IOC还有一种实现方式为“依赖查找”(Dependency Lookup)

    3. aop编程的支持 通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP(面向对象编程)实现的功能可以通过AOP轻松应付。 4. 方便集成各种优秀的框架 Spring不排斥各种优秀的开源框架,相反,Spring可以降低各种框架的使用难度,Spring提供了对各种优秀框架(如Struts,Hibernate、Hessian、Quartz)等的直接支持。

    这点非常能体现spring的气量,其实spring本身就提供了表述层(spring MVC)和持久层的(spring JDBC)框架

    5. 声明式事务的支持 在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量。 6. 方便程序的测试 可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。例如:Spring对Junit4支持,可以通过注解方便的测试Spring程序。

    3.spring官网

    我们可以在spring的官网学习spring的所有的相关知识,目前使用的最多的还是4.×.×版本的 springFramework官网地址: https://spring.io/projects/spring-framework

    Processed: 0.011, SQL: 9