Spring概述

一.Spring概述

  • Spring是分层的javaSE/EE full-stack轻量级,非侵入式的一站式开源框架,以IOC(Inverse of Control控制反转)和AOP(Aspect Oriented Programming面向切面编程)为内核.使用基本JavaBean来完成以前只能由EJB完成的工作,取代了EJB的臃肿,低效的开发模式

    • JavaBean实际上是一种java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象

    • JEB 通俗理解就是将我们编写软件中的那些需要执行指定的任务的类,不放到客户端软件上了,而是给他打包放置在一个服务器端上

    • IOC(Insersion Of Control 控制反转): 以前我们使用对象,在哪里使用就在哪里new一个,但是这样写并不灵活,显得很呆.IOC的思想就是用Spring框架将所有使用的对象进行管理(对象的创建,功能增强,对象的销毁),我们在哪里使用对象,就在哪里注入.以此实现了对象创建的权利转移.

    • AOP(Aspect Oriented Programming 面向切面编程)利用SpringAOP基础功能切入业务类,精简了代码,且有利于后期维护.

    • 一站式框架: Spring还对jdbc,对事物进行了管理;对web层进行了封装

  • 实际开发中,通常服务器端采用3层体系架构,分别为表示层(Web),业务逻辑层(Service),持久层(Dao).Spring对每一层都提供了技术支持

    • 表示层 提供了Struts等框架的整合

    • 业务逻辑层 可用来管理事物,记录日志等

    • 持久层 持久层可整合Hibernate,JDBC Template

  • Spring框架整合其他框架,便于开发,即Spring是一站式框架,也是javaEE 的一种解决方案

二.Spring框架的优点

Spring具有简单,可测试和松耦合等特点,Spring不仅仅可以用于服务器端开发,也可以应用于任何java应用开发之中

1.非侵入式设计

简单来说就是不要求实现接口

什么是侵入式与非侵入式:

  • 侵入式: 我们在开发中需要引入许多框架.如果引入的框架如果在使用时,需要继承框架提供的实体类或者实现框架提供的接口,这就说明该框架是侵入式框架. 因为程序本身对框架有了依赖,所以当我们除去框架时,程序也就无法运行,这样的就是重量级框架.

  • 非侵入式: 与侵入式相反,当我们使用非侵入式框架时,不需要去实现框架中的类或者接口,因此当我们除去框架时,通过对程序的简单修改还可以继续使用,这样的称为非侵入式.

2.方便解耦,简化开发

将所有对象的创建,对象之间的关系,维护等都交给Spring来完成,简化了我们开发时需要频繁手动创建对象的繁琐步骤,同时也降低了耦合度.

3.支持AOP

4.支持声明式事物处理

Spring框架将事物管理的功能集成了,我们在开发时不用再去手工提交事物等等,这些事物管理Spring会帮我们完成.

5.方便程序测试

6.方便集成各种优秀的框架

7.降低javaEE API的使用难度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Spring是一个开源的Java框架,用于构建企业级应用程序。它提供了一种轻量级的、非侵入式的开发方式,通过使用依赖注入和面向切面编程等特性,简化了Java应用程序的开发。 Spring框架的核心特性包括: 1. 控制反转(IoC):Spring通过控制反转实现了对象之间的解耦。它将对象的创建和依赖关系的管理交给了Spring容器,开发者只需要定义好对象的配置信息,Spring容器就会负责创建和管理这些对象。 2. 依赖注入(DI):Spring使用依赖注入来实现对象之间的依赖关系。开发者只需要在对象中定义好需要注入的依赖,Spring容器就会自动将依赖注入到对象中,无需手动管理对象之间的依赖关系。 3. 面向切面编程(AOP):Spring提供了面向切面编程的支持,可以将与业务逻辑无关的横切关注点(如日志记录、事务管理等)从业务逻辑中分离出来,提高了代码的模块化和可重用性。 4. 容器管理:Spring提供了一个容器,用于管理应用程序中的各个组件。容器负责创建和管理对象的生命周期,并提供了一些额外的功能,如事件发布、国际化支持等。 5. 数据访问支持:Spring提供了对各种数据访问技术的支持,包括JDBC、ORM框架(如Hibernate、MyBatis)、事务管理等。 6. Web开发支持:Spring提供了对Web开发的支持,包括MVC框架、RESTful服务、WebSocket等。 7. 测试支持:Spring提供了对单元测试和集成测试的支持,可以方便地进行测试驱动开发。 总之,Spring框架通过提供一系列的功能和特性,简化了Java应用程序的开发,提高了代码的可维护性和可测试性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会写代码的菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值