Spring学习笔记之spring概述

这篇具有很好参考价值的文章主要介绍了Spring学习笔记之spring概述。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Spring介绍

Spring是一个轻量级的控制反转和面向切面的容器框架

Spring最初的出现是为了解决EJB臃肿的设计,以及难以测试等问题。

Spring为了简化开发而生,让程序员只需关注核心业务的实现,尽可能的不再关注非业务逻辑代码(事务控制,安全日志等)

Spring8大模块

八大模块中有两大核心模块,AOP和IpCSpring学习笔记之spring概述,spring学习笔记,spring,学习,笔记

  1. Spring Core模块
    这是Spring框架最基础的部分,它提供了依赖注入(DependencyInjection)特征来实现容器对Bean的管理。核心容器的主要组件是 BeanFactory,BeanFactory是工厂模式的一个实现,是任何Spring应用的核心。它使用IoC将应用配置和依赖从实际的应用代码中分离出来。
  2. Spring Context模块
    如果说核心模块中的BeanFactory使Spring成为容器的话,那么上下文模块就是Spring成为框架的原因。
    这个模块扩展了BeanFactory,增加了对国际化(I18N)消息、事件传播、验证的支持。另外提供了许多企业服务,例如电子邮件、JNDI访问、EJB集成、远程以及时序调度(scheduling)服务。也包括了对模版框架例如Velocity和FreeMarker集成的支持
  3. Spring AOP模块
    Spring在它的AOP模块中提供了对面向切面编程的丰富支持,Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖组件,就可以将声明性事务管理集成到应用程序中,可以自定义拦截器、切点、日志等操作。
  4. Spring DAO模块
    提供了一个JDBC的抽象层和异常层次结构,消除了烦琐的JDBC编码和数据库厂商特有的错误代码解析,用于简化JDBC。
  5. Spring ORM模块
    Spring提供了ORM模块。Spring并不试图实现它自己的ORM解决方案,而是为几种流行的ORM框架提供了集成方案,包括Hibernate、JDO和iBATIS SQL映射,这些都遵从 Spring 的通用事务和 DAO 异常层次结构。
  6. Spring Web MVC模块
    Spring为构建Web应用提供了一个功能全面的MVC框架。虽然Spring可以很容易地与其它MVC框架集成,例如Struts,但Spring的MVC框架使用IoC对控制逻辑和业务对象提供了完全的分离。
  7. Spring WebFlux模块
    Spring Framework 中包含的原始 Web 框架 Spring Web MVC 是专门为 Servlet API 和 Servlet 容器构建的。反应式堆栈 Web 框架 Spring WebFlux 是在 5.0 版的后期添加的。它是完全非阻塞的,支持反应式流(Reactive Stream)背压,并在Netty,Undertow和Servlet 3.1+容器等服务器上运行。
  8. Spring Web模块
    Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文,提供了Spring和其它Web框架的集成,比如Struts、WebWork。还提供了一些面向服务支持,例如:实现文件上传的multipart请求。

Spring特点

  1. 轻量
    a. 从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。
    b. Spring是非侵入式的:Spring应用中的对象不依赖于Spring的特定类。
  2. 控制反转
    a. Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其他对象会通过被动的方式传递进来,而不是这个对象自己创建或查找依赖对象。你可以认为IoC和JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
  3. 面向切面
    a. Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。应用对象只实现它们应该做的——完成业务逻辑——仅此而已。它们并不负责(甚至是意识)其他的系统级关注点,例如日志或事务支持。
  4. 容器
    a. Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。
  5. 框架
    a. Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。

所有Spring的这些特征能使程序编写的更干净,更可管理,并且更易于测试的代码。它们页为Spring中的各种模块提供了基础支持。文章来源地址https://www.toymoban.com/news/detail-622568.html

到了这里,关于Spring学习笔记之spring概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring学习笔记2 Spring的入门程序

    Spring学习笔记1 启示录_biubiubiu0706的博客-CSDN博客 Spring官网地址:https://spring.io 进入github往下拉 用maven引入spring-context依赖 写spring的第一个程序 引入下面依赖,好比引入Spring的基本依赖   需要一个spring配置文件,idea提供了模板 名字随意 在Spring的配置文件中配置完 测试去Spring容器

    2024年02月08日
    浏览(30)
  • Spring声明式事务(Spring学习笔记十三)

            不推荐使用编程式事务  在Spring-dao.xml中配置声明式事务  结合aop实现事务的织入 分两步         第一步:          第二步:

    2024年04月10日
    浏览(30)
  • Spring学习笔记+SpringMvc+SpringBoot学习笔记

    1.1 概念 1、 POJO 是 Plain Old Java Object(简单老式Java对象)的缩写。它是指在Java开发中普通的Java对象,不依赖于特定的框架或技术。POJO 类型通常用于表示领域模型、数据传输对象(DTO)或实体对象等。 1.2 注解 1.1 SpringMVC概述 SpringMVC用于表现层开发,与Servlet相似,但使用上比

    2024年02月12日
    浏览(29)
  • Spring学习笔记之Spring IoC注解式开发

    注解的存在主要是为了简化XML的配置。Spring6倡导全注解开发 注解怎么定义,注解中的属性怎么定义? 注解怎么使用 通过反射机制怎么读取注解 注解怎么定义,注解中的属性怎么定义? 以上是自定义了一个注解:Component 该注解上面修饰的注解包括:Target注解和Retention注解,

    2024年02月12日
    浏览(31)
  • spring学习笔记七

    1.1、BookDao接口和实现类 1.2、BookService接口和实现类 1.3、配置文件 1.4、使用方法 1.5、总结 在配置文件中添加autowire属性为byType spring会按照BookDao类型找到对应的Bean实现注入

    2024年02月16日
    浏览(22)
  • Spring5 学习笔记

    前置知识: 掌握Java基础知识(特别是反射) 掌握Java注解 掌握XML 掌握Maven 简化企业开发的复杂性 Spring理念:使现有的技术更加容易使用,本身是一个大杂烩,整合了现有的技术框架。 SSH:Struct2 + Spring + Hibernate SSM:Spring MVC + Spring + MyBatis 官网 : http://spring.io/ 官方下载地址

    2024年02月07日
    浏览(47)
  • Spring学习笔记(1)

    问题一: 层与层之前联系在一起,耦合性高(接口与实现类相互联系) 解决方法: Spring提供了第三方来自动加载对象,不用自己手动new出对象,第三方自动提供Bean对象 问题二:通用的事务功能耦合在业务代码中,通用的日志功能耦合在业务代码中 通用的事务功能指的是一

    2024年02月07日
    浏览(27)
  • 学习笔记-Spring事务

    学习的文章 小姐姐非要问我:spring编程式事务是啥? (qq.com) 一文搞懂什么是事务 - 知乎 (zhihu.com) 阿里3面:Spring声明式事务连环炮,让我措手不及。。 (qq.com) 带你读懂Spring 事务——事务的传播机制 - 知乎 (zhihu.com) spring 事务失效的 12 种场景_事务什么时候失效_hanjq_code的博客

    2024年02月06日
    浏览(27)
  • spring学习笔记八

    1、BookDao接口和实现类 2、配置文件 3、使用方法 4、总结 Array使用array和value节点注入 List使用list和value节点注入 Set使用set和value节点注入 Map使用map和entry节点中的key和value属性注入 Properties使用props中prop节点的key属性和内容注入

    2024年02月15日
    浏览(21)
  • spring学习笔记三

    1.1、OrderDao接口与实现类 1.2、OrderFactory类 1.3、spring配置applicationContext.xml 1.4、使用 1.5、总结 在xml中配置class的工厂类,factory-method指定工厂实例方法 2.1、UserDao接口和实现类 2.2、UserDaoFactory类 2.3、配置applicationContext.xml 2.4、使用 2.5、总结 设置userFactory的Bean 设置userDao的Bean,配

    2024年02月15日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包