初识Spring框架(详细介绍 )

目录

一、为什么学Spring?🍭

二、Sprin是什么?

  官方文档🧁

  Spring概述🍭

  特点和功能:

Ⅰ、控制反转 (IoC) 和依赖注入 (DI)

如何使用控制反转和依赖注入?

①  get、set注入方式:

②  构造注入方式

③  注解(重点)

Ⅱ、AOP  (面向切面编程)🧁

AOP相关术语

AOP的增强处理类型及特点


一、为什么学Spring?🍭

  1. 简化开发:Spring框架提供了许多功能和模块,可以大大简化企业级应用程序的开发过程。它提供了一套成熟的解决方案,涵盖了从依赖注入到面向切面编程等多个方面,使开发人员能够更专注于业务逻辑而非底层技术细节。

  2. 提高可维护性:Spring框架鼓励使用面向接口的编程方式,通过依赖注入和面向切面编程来实现松耦合的组件之间的交互。这种设计模式使代码更加模块化、可复用和易于维护。

  3. 便于集成:Spring框架具有广泛的集成能力,可以与各种第三方库、开发工具和框架无缝集成。它支持各种数据访问技术、Web框架、消息传递、安全性等,使开发人员能够灵活地选择适合自己需求的组件,同时降低了集成的复杂性。

  4. 提升测试效率:Spring框架鼓励编写可测试的代码。通过依赖注入,开发人员可以轻松地替换依赖的组件,使用Mock对象进行单元测试。此外,Spring还提供了一套测试支持类和工具,简化了集成测试和系统测试的过程。

  5. 支持企业级需求:Spring框架是为构建复杂的企业级应用程序而设计的。它提供了丰富的功能,如事务管理、安全性、缓存、调度等。这些功能使得开发人员能够轻松地处理企业级需求,并确保应用程序的可靠性和性能。

  6. 社区支持:Spring框架拥有庞大的用户社区和活跃的维护团队。这意味着您可以从其他开发人员的经验中获取帮助和支持,找到解决问题的最佳实践,并及时获得更新和修复bug的版本。

二、Sprin是什么?

  官方文档🧁

Spring | Why Springhttps://spring.io/why-spring

  Spring概述🍭

       Spring框架是一个用于构建企业级Java应用程序的开源框架。它提供了一套全面的解决方案,使开发人员能够更轻松地创建可维护、灵活和可扩展的应用程序。

  特点和功能:

  1. 轻量级:Spring框架采用了基于POJO(Plain Old Java Object)的开发模式,避免了对特定的容器或框架的依赖,从而使应用程序更加轻量级。

  2. 依赖注入(Dependency Injection):通过依赖注入,Spring框架能够管理对象之间的依赖关系。这种方式可以降低组件之间的耦合度,并使测试变得更加容易。

  3. 面向切面编程(Aspect-Oriented Programming):Spring支持面向切面编程,使开发人员能够将与业务逻辑无关的功能(例如日志记录、安全性、事务管理等)从应用程序主体中分离出来。

  4. 容器:Spring框架提供了一个容器(ApplicationContext),该容器负责创建和管理应用程序中的对象。它还支持各种配置选项,如XML配置、Java注解和基于Java的配置。

  5. 数据访问:Spring提供了对各种数据访问技术的集成支持,包括JDBC、ORM框架(如Hibernate和MyBatis)以及NoSQL数据库。

  6. Web开发:Spring框架还提供了用于构建Web应用程序的模块,如Spring MVC。它简化了开发过程,并提供了灵活的配置选项。

  7. 测试:Spring框架鼓励编写可测试的代码,它提供了一套测试支持类和工具,如Mock对象、测试注解和集成测试支持。

注:Spring的核心是IoC(控制反转)和AOP(面向切面编程)!!!

Ⅰ、控制反转 (IoC) 和依赖注入 (DI)

         在之前,开发人员需要通过new来创建对象的生命周期,每new一次对象就会重新开辟一个空间。导致代码与对象的创建和依赖关系紧密耦合,难以维护和拓展,还很浪费内存

package domain;

import org.junit.Test;

public class UserTest {

    @Test
    public void
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值