Spring是什么意思?

简介: Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。

Spring框架是一个开放源代码J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。

Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。

因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。

Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。

其次,无需多言,这张图表很好地解释了 Spring 在 Java 生态系统中的主导地位。10 开发人员中就有 4 能在其应用中使用 Spring Boot,而紧随其后的便是Spring MVC 框架。

Spring是什么意思?

现在,让我们一起来尝试下Spring 快速入门指南吧!

第一步:启动一个新的 Spring Boot 项目

利用启动.spring.io创建一个“网络”项目。在“依赖项”对话框中搜索并添加“web”依赖项,如屏幕截图所示。点击“生成”按钮,下载 zip,然后将其解压缩到计算机上的文件夹中。

创建的项目启动.spring.io包含弹簧靴,一个使 Spring 准备好在您的应用程序中工作的框架,但不需要太多代码或配置。Spring Boot 是启动 Spring 项目的最快和最流行的方式。

第 2 步:添加您的代码

在 IDE 中打开项目并在文件夹DemoApplication.java中找到该文件
src/main/java/com/example/demo
。现在通过添加下面代码中显示的额外方法和注释来更改文件的内容。您可以复制并粘贴代码或直接输入。

hello()我们添加的方法旨在获取一个名为 的字符串参数name,然后将该参数与"Hello"代码中的单词结合起来。这意味着如果您“Amy”在请求中将您的姓名设置为,则响应将为“Hello Amy”.

@RestController注释告诉 Spring 这段代码描述了一个应该在 web 上可用的端点。@GetMapping(“/hello”)告诉 Spring 使用我们的方法hello()来回答发送到该
http://localhost:8080/hello
地址的请求。最后,@RequestParam告诉 Springname在请求中期待一个值,但如果它不存在,它将默认使用单词“World”。

第 3 步:尝试一下

让我们构建并运行程序。打开命令行(或终端)并导航到您拥有项目文件的文件夹。我们可以通过发出以下命令来构建和运行应用程序:

macOS/Linux:

./mvnw spring-boot:run

视窗:

mvnw spring-boot:run

您应该会看到一些与此非常相似的输出:

这里的最后几行告诉我们春天已经开始了。Spring Boot 的嵌入式 Apache Tomcat 服务器充当 Web 服务器,并正在侦听localhostport上的请求8080。打开浏览器,在顶部的地址栏中输入http://localhost:8080/你好. 你应该得到一个很好的回应,如下所示:

Spring能做什么

微服务

微服务架构是“新常态”。构建小型、独立、可立即运行的应用程序可以为您的代码带来极大的灵活性并增加弹性。Spring Boot 的许多专用功能使您可以轻松地在生产环境中大规模构建和运行微服务。别忘了,没有微服务架构是不完整的春云‒ 简化管理并提高容错能力。

反应性

反应式系统具有某些特性,使其成为低延迟、高吞吐量工作负载的理想选择。Project Reactor 和 Spring 产品组合协同工作,使开发人员能够构建响应式、弹性、弹性和消息驱动的企业级反应式系统。

开发分布式系统可能具有挑战性。复杂性从应用层转移到网络层,需要服务之间更大的交互。使您的代码“云原生”意味着处理12因子诸如外部配置、无状态、日志记录和连接到支持服务等问题。Spring Cloud 项目套件包含使用应用程序在云中运行所需的许多服务。

网络应用程序

Spring 使构建 Web 应用程序变得快速而轻松。通过删除与 Web 开发相关的大部分样板代码和配置,您可以获得一个现代 Web 编程模型,该模型可以简化服务器端 HTML 应用程序、REST API 和基于事件的双向系统的开发。

无服务器

无服务器应用程序利用现代云计算功能和抽象让您专注于逻辑而不是基础设施。在无服务器环境中,您可以专注于编写应用程序代码,而底层平台负责扩展、运行时间、资源分配、安全性和其他“服务器”细节。

事件驱动

事件驱动的系统反映了现代企业的实际运作方式——每天都在发生成千上万的小变化。Spring 处理事件并使开发人员能够围绕它们构建应用程序的能力意味着您的应用程序将与您的业务保持同步。Spring 有许多事件驱动选项可供选择,从集成和流式传输一直到云功能和数据流。

批处理高效处理大量数据的能力使其成为许多用例的理想选择。Spring Batch 行业标准处理模式的实现使您可以在 JVM 上构建健壮的批处理作业。从 Spring 产品组合中添加 Spring Boot 和其他组件可让您构建任务关键性批处理应用程序。

#java##spring##spring认证#


重要提醒: Spring 中国教育管理中心已携手 VMware 全球最新 Spring技术和认证体系,帮助中国院校构建专业教学内容,全面赋能未来开发人。

Spring是什么意思?

Spring Professional认证旨在测试和验证学生对 Spring 和 Spring Boot核心方面的理解和熟悉程度,例如:配置、组件扫描、AOP、数据访问和事务、REST、安全、自动配置、执行器、 Spring boot测试等。

相关文章
|
NoSQL Ubuntu 测试技术
GRPC C++开发环境搭建
GRPC C++开发环境搭建
1194 1
|
算法 关系型数据库 MySQL
【MySQL系列】Select语句单表查询详解(二)ORDERBY排序
文章目录 一、排序ORDER BY 1.ORDER BY的格式: 2.ORDER BY的作用: 3.ORDER BY的使用: 1️⃣ 按照字段名排序 2️⃣按字段照序号进行排序 3️⃣降序DESC 4️⃣根据多列排序 5️⃣还可以结合搭配函数或者一些查询条件使用。
电脑上扫码支付功能用法
  PC扫码支付的方式,支持前置模式和跳转模式。  前置模式是将二维码前置到商户的订单确认页的模式。需要商户在自己的页面中以 iframe 方式请求支付宝页面。具体分为以下几种:  0:订单码-简约前置模式,对应 iframe 宽度不能小于600px,高度不能小于300px; qr_pay...
3774 12
|
Web App开发 Linux
linux(三十九)linux软件包管理RPM
linux(三十九)linux软件包管理RPM
508 0
|
存储 弹性计算 关系型数据库
【赵渝强老师】达梦数据库的产品系列
达梦数据库是达梦公司推出的新一代自研数据库,融合分布式、弹性计算与云计算优势,支持超大规模并发事务处理和HTAP混合业务。产品体系包括DM8、DMDSC、DM DataWatch、DMMPP和DMRWC,分别适用于通用关系型数据库、共享存储集群、数据守护集群、大规模数据分析及读写分离场景,满足不同需求并保障高可用性和安全性。
685 36
|
存储 自然语言处理 监控
FunAudioLLM大模型SenseVoice和CosyVoice测评
FunAudioLLM大模型SenseVoice和CosyVoice测评
|
Java 开发者 微服务
微服务——SpringBoot使用归纳——Spring Boot中的切面AOP处理——什么是AOP
本文介绍了Spring Boot中的切面AOP处理。AOP(Aspect Oriented Programming)即面向切面编程,其核心思想是分离关注点。通过AOP,程序可以将与业务逻辑无关的代码(如日志记录、事务管理等)从主要逻辑中抽离,交由专门的“仆人”处理,从而让开发者专注于核心任务。这种机制实现了模块间的灵活组合,使程序结构更加可配置、可扩展。文中以生活化比喻生动阐释了AOP的工作原理及其优势。
610 0
|
存储 Java 编译器
【Java异常】Variable used in lambda expression should be final or effectively final
【Java异常】Variable used in lambda expression should be final or effectively final
728 0
【Java异常】Variable used in lambda expression should be final or effectively final
|
自然语言处理 算法 物联网
【技术前沿】智能反向寻车解决方案:提升停车场用户体验与运营效率
本文介绍了一种智能反向寻车解决方案,通过集成物联网(IoT)、大数据分析及用户友好的移动应用,利用蓝牙信标或RFID标签实现车辆厘米级定位。车主仅需输入车牌号或停车位编号,即可获得最佳寻车路径。该方案不仅大幅缩短寻车时间,还提升了停车场运营效率。以合肥骆岗公园为例,应用后车主平均寻车时间从10分钟缩短至2分钟内,用户满意度显著提高。
889 1
【技术前沿】智能反向寻车解决方案:提升停车场用户体验与运营效率
|
传感器 存储 编解码
基于STM32的智能手环wifi连接手机APP(上)
基于STM32的智能手环wifi连接手机APP(上)
768 0