Spring框架介绍

这是Spring框架和Spring核心概念的简介。 在本教程中,我们将介绍Spring Framework的主要优点和功能。 在随后的教程中,我们将学习有关SpringSpring Boot的更多信息。

总览

我们知道, Spring框架Java开发人员中最受欢迎的应用程序框架。 Spring以为Java 几乎可以完成的所有工作提供抽象和基础结构框架而闻名。 在较高的层次上,如果您想使用Java来访问数据库或NoSql DataStore,请创建一个Web应用程序,并与RESTful服务(例如,等等)进行交互。Spring已经为它提供了框架或抽象。

1.1Spring项目

Spring有很多模块和项目。 学习Spring框架甚至不需要很多。 以下是一些使用Spring编写企业应用程序时最有可能使用的主要Spring项目。

  • Spring CoreSpring的基础。 它包括依赖注入(DI)和控制反转(IOC)
  • Spring MVC :JSP / Servlet的抽象,用于构建基于Web的应用程序。
  • Spring AOP :用于编写方面和面向方面的程序的快速组件。
  • Spring Data :一组框架,提供跨不同类型的数据存储区访问数据的统一方法。
  • Spring REST :Spring组件,用于编写RESTful Web服务。
  • Spring Data JPA :Spring-data下的一个框架,用于增强Java Persistence API的实现。
  • Spring Security :基于Web的应用程序的身份验证和授权框架。
  • Spring Integration :一种流数据处理框架,遵循Pipes and Channels Integration Pattern。

1.2如何学习Spring?

实际上,Spring框架很大,无法在一两个教程中学习。 学习Spring的最好方法是从Spring-Core开始 ,了解依赖注入控制反转 ,了解什么是Bean Factory和Bean Lifecycle,并尝试许多Hello World程序。

理解和尝试以上内容非常重要,因为这些几乎是Spring Framework中所有内容的基础。 一旦您熟悉了Spring的基本组件和原理,其他所有模块都非常容易选择。

2 Spring的特点

尽管Spring已经证明了其在开发行业级软件的许多方面的有用性,但我们将介绍Spring Framework的一些关键优点。

2.1简单性

在Spring之前,企业应用程序曾经基于Enterprise Java Bean (EJB)。 EJB以其复杂性,庞大性和较长的开发时间而闻名。 在契约中,Spring Frameworks仅基于普通旧Java对象 (POJO)和普通Java类。

2.2模块化

尽管Spring拥有大量工具,但您并不需要全部使用它。 Spring Developers巧妙地将其模块化。 简而言之,这意味着Spring中的不同工具或组件将作为独立的Java归档文件提供。 如果您想使用Spring APO,并且只需要spring AOP存档(以及几个核心库)。

2.3容器

任何Spring应用程序都有一个内置容器,该容器负责在应用程序中提供上下文。 容器在Springs Context中创建和管理类的实例。 容器还负责对象之间的依赖关系,称为依赖关系注入。 有了基于容器和上下文的机制,Spring应用程序通常真的很容易进行单元测试和集成测试。 您只需要提供“测试”上下文,整个应用程序将易于测试。

2.4豆工厂

Spring Bean Factory由Spring Container支持。 声明为Spring Bean的类由Spring Bean Factory实例化。 我们不再需要使用new关键字。 Bean工厂可以延迟或急于实例化Bean(基于指定的策略)。 这样做时,如果Bean依赖于其他Bean,那么它们也会被实例化并注入。 这种机制称为依赖注入。

2.5流行

如前所述,Spring是最受欢迎的Java应用程序框架。 使用流行的框架有某些好处。 流行的框架始终保持良好的维护和良好的支持。 Internet上提供了大量资源,学习资料和黑客手段。 在Spring的组织或更广泛的社区中,使用开发人员可以说通用的语言和术语。

3小结

在这个简短的教程中,我们介绍了Spring Framework 。 我们了解了Spring的主要模块以及Spring功能。 我们对弹簧模块性,流行性,弹簧容器和弹簧豆工厂进行了简要概述。 在即将到来的教程中,我们将了解有关Spring Framework的更多信息。

翻译自: https://www.javacodegeeks.com/2019/02/introduction-spring-framework.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344444.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤教育】电大中专职业生涯规划 (2)_1作业 题库

1职业价值观具有明确的目的性、()和坚定性的职业选择的态度和行为。 A自由性 B动机性 C自觉性 D制约性 错误 正确答案:左边查询 学生答案:A 2不属于探索价值观方法的是()。 A澄清反应法 B意见表决法 C间接提…

【渝粤教育】电大中专会计电算化_1作业 题库

1.下列有关会计电算化狭义概念的说法正确的是()。 A.以会计理论为主体的电子信息技术在会计工作中的应用 B.与实现电算化有关的所有工作 C.以电子计算机为主体的电子信息技术在会计工作中的应用 D.与实现电算化有关的主要工作 错误 正确答案:左边查询 学生答案&…

java 移动其他窗口_移动窗口平均值不等

TL;DR: 无论如何我可以摆脱我的第二个 for -loop?我在2D网格上有一系列时间点 . 为了消除它们位置的快速波动,我在一个帧窗口上平均坐标 . 现在在我的情况下,它想要包含特定点的帧,如果它的行程比 cut_off 值更远 .在第一个 for -…

auot lisp 选择集处理_请教个选择集排序的问题 - AutoLISP/Visual LISP 编程技术 - CAD论坛 - 明经CAD社区 - Powered by Discuz!...

本帖最后由 vlisp2012 于 2013-10-9 16:27 编辑通过ssget获得的选择集的排序,无法很好的控制,每次下面材的时候,都是通过fence,画线选择板块,很繁琐。我想编辑一个程序,通过x坐标和y坐标来对面材(封闭多段线…

mockito模拟依赖注入_使用Mockito模拟自动装配的字段

mockito模拟依赖注入依赖注入是诸如Spring和EJB之类的Control容器反转的非常强大的功能。 将注入的值封装到私有字段中总是一个好主意。 但是,自动连线字段的封装会降低可测试性。 我喜欢Mockito解决此问题以模拟自动装配字段的方式。 将在示例中进行解释。 &#…

【渝粤教育】电大中专药物化学基础_1作业 题库

1.关于药物的分配系数对药效的影响,叙述正确的是()。 A.分配系数愈小,药效愈好 B.分配系数愈大,药效愈好 C.分配系数愈小,药效愈低 D.分配系数愈大,药效愈低 E.分配系数适当,药效为好…

【渝粤教育】广东开放大学 动画原画设计 形成性考核 (22)

选择题 题目:默认情况下,用户在使用形状工具绘制形状时,形状图层的内容均以哪种形式填充。 题目:利用颜色取样器获取颜色时,最多可以创建多少个取样点 题目:哪种滤镜可以把图像变得柔和? 题目&a…

【渝粤题库】陕西师范大学200091 东方文学专题研究 作业

《东方文学专题》作业 一、单选题 1、( )是古代埃及的一部诗歌总集,也是世界上现存最古老的诗集和最早的书面文学作品。 A 《亡灵书》 B 《庄稼人的歌谣》 C 《荷马史诗》 D《神话》 2、( )被称为“史诗之王”&#xf…

java 80_【JavaWeb】80:js基础详解

今天是刘小爱自学Java的第80天。感谢你的观看,谢谢你。话不多说,开始今天的学习:JavaScript是一门编程语言,但凡是编程语言,其在基本语法上都是大同小异的。我们学了Java,那么再学习其它语言时,…

【渝粤题库】陕西师范大学200101 西方文学 作业(高起专)

《西方文学》作业 一.填空题 1.古希腊悲剧之父是 ,他的代表作品是 。 2.法国人文主义文学最杰出的代表作家是 ,他的代表作品是 。 3.法国批判现实主义文学的奠基人是 ,他的代表作品是 。 4.易卜生的四大社会问题剧是 、 、 、 。 …

半年时间能学会php吗_4个月真的能学会PHP吗

4个月真的能学会PHP吗有些一直想来源码时代学习PHP学科的学员很好奇,这么多的内容,在5个月左右就全部学完,真的可以么?这几个月以后自己还是一问三不知怎么办?今天,我们就来说说学习PHP这件事。PHP是什么,应用得怎么…

【渝粤题库】陕西师范大学200651线性代数 作业(高起专、高起本)

《线性代数》作业 一、选择题 1&#xff0e;如果D&#xff0c;则行列式的值应为&#xff1a; A&#xff0e; 6D B&#xff0e;12D C&#xff0e;24D D&#xff0e;36D 2&#xff0e;设A 为n阶方阵&#xff0c;R&#xff08;A&#xff09;r<n,那么&#xff1a; A&#xff0e;…

【渝粤题库】陕西师范大学201381 国际经济法作业

《国际经济法》作业 一、单项选择题 1&#xff0e;在下列贸易术语中&#xff0c;应当由买方办理租船订舱手续的是哪种术语&#xff1f; A&#xff0e;FOB      B&#xff0e;CFR      C&#xff0e;CIP       D&#xff0e;DDP 2&#xff0e;《联合国国际货物买…

php manager iis 8,PHPManager2下载

PHP Manager 2.x 理论支持win10,win8,win7,Windows Server2008,Windows Server2012,Windows Server2012R2,Windows Server2016,,Windows Server2019与其对应的IIS版本.--PHP Manager 2.4 for IIS10,IIS8,IIS7 下载简单但功能强大具有独特功能的工具&#xff0c;可以处理所有细节…

【渝粤题库】陕西师范大学202012 刑事诉讼法专论 作业

《刑事诉讼法专论》作业 一、单项选择题 1.在刑事诉讼中&#xff0c;法官消极中立&#xff0c;通过当事人举证、辩论发现事实真相&#xff0c;并由当事人人推动诉讼进程。这种诉讼构造属于下列哪一种类型&#xff1f;&#xff08; &#xff09; A.职权主义  B.当事人主义  …

【渝粤题库】陕西师范大学202411 管理学基础 作业 (专升本、高起本、高起专)

《管理学基础》作业 一、名词解释 管理       2. 科学管理理论    3. 定性目标      4. 管理主体经济方法     6&#xff0e;规划        7&#xff0e;行政组织理论    8&#xff0e;高层目标管理环境     10&#xff0e;人际关系学说 …

移动支付php,银联手机支付服务端PHP端代码

1 开发前准备 先和银联手机支付签约&#xff0c;他们会给你测试的证书已经手机客户端的控件2 将包里的文件(TESTMERCHANT.p12)经过openssl生成的密钥文件TESTMERCHANT.pm 默认密码是 13 PHP端程序下订单程序/** 银联支付* *///wap下订单接口(需要验证签名)public function wap…

【渝粤题库】陕西师范大学210022 学前儿童语言教育 作业(专升本)

《学前儿童语言教育》作业 一、填空题 学前儿童语言教育是研究儿童 的现象、 及其训练和 的一门科学&#xff0c;是学前教育师范院校 的一门应用性科目。学前儿童语言教育目标主要分为三个层次&#xff0c;即语言教育 、 和 。语言教育评价是语言教育 中的一个要素&#xff0c…

【渝粤题库】陕西师范大学292011 初级微观经济学 作业(高起专)

《初级微观经济学》作业 一、填空题 1.微观经济学的研究对象是————————————。 2.需求曲线向————倾斜&#xff0c;表明商品的价格与供给量成————变动。 3.支持价格是政府为了扶植某一行业的生产而规定的该行业产品的——————。 4&#xff0e;>1&…

【渝粤题库】陕西师范大学300011 历史文献学

《历史文献学》作业 一、名词解释 1&#xff0e;卜辞 2&#xff0e;旋风页 3&#xff0e;“经” 4&#xff0e;《史记》三家注 5&#xff0e;别集 6&#xff0e;校勘 7&#xff0e;载体文献 8&#xff0e;蝴蝶装 9&#xff0e;“朱丝栏”与“乌丝栏” 10&#xff0e;别史 11&am…