Spring, SpringBoot, SpringCloud,微服务

 1,SSM (Spring+SpringMVC+MyBatis)

SSM框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容),常作为数据源较简单的web项目的框架。

Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,Controller 替换 Servlet 来担负控制器的职责,用于接收请求,调用相应的 Model 进行处理,处理器完成业务处理后返回处理结果。Controller 调用相应的 View 并对处理结果进行视图渲染,最终客户端得到响应信息。
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息(MyBatis是让你写的java程序对数据库进行增删改查的一个工具)

SpringMVC的执行流程:

        SpringMVC是由dispatchServlet为核心的分层控制框架,首先客户端发出一个请求,web服务器解析请求并去匹配dispatchServlet的映射url,如果匹配上就将这个请求放入到dispatchServlet,dispatchServlet根据mapping映射配置去寻找相对应的handler,然后把处理权交给找到handler,handler封装了处理业务逻辑的代码,当handler处理完后会返回一个逻辑视图ModelAndView给dispatchServlet,此时的ModelAndView是逻辑视图,所以dispatchServlet会通过ViewResource视图资源解析ModelAndView,然后将解析后的参数放到View中返回给客户端。

2,SpringBoot

启动一个新的 Spring 项目,我们必须添加构建路径或添加 Maven 依赖关系,配置应用程序服务器,添加 spring 配置。因此,开始一个新的 spring 项目需要很多努力,因为我们现在必须从头开始做所有事情。Spring Boot 是解决这个问题的方法。Spring Boot 已经建立在现有 spring 框架之上。使用 spring 启动,我们避免了之前我们必须做的所有样板代码和配置。因此,Spring Boot 可以帮助我们以最少的工作量,更加健壮地使用现有的 Spring功能。

3,什么是 spring ,springBoot

Spring  Spring 框架为开发 Java 应用程序提供了全面的基础架构支持。如依赖注入和开箱即用的模块,如:Spring JDBC 、Spring MVC 、Spring Security、 Spring AOP 、Spring ORM 、Spring Test 这些模块,缩短应用程序的开发时间,提高了应用开发的效率。

Spring Boot 基本上是 Spring 框架的扩展,它消除了设置 Spring 应用程序所需的 XML配置,为更快,更高效的开发生态系统铺平了道路。

4,springBoot 特点

特点: 1:创建独立的 spring 应用。 2:嵌入 Tomcat , Jetty Undertow 而且不需要部署他们。 3:提供的“starters” poms来简化 Maven 配置 4:尽可能自动配置 spring 应用。 5:提供生产指标,健壮检查和外部化配置 6:更少的配置 因为没有 web.xml 文件。只需添加用@ Configuration 注释的类,然后添加用@Bean 注释的方法,Spring 将自动加载对象并像以前一样对其进行管理。您甚至可以将@Autowired 添加到 bean 方法中,以使 Spring 自动装入需要的依赖关系中。(Spring Boot 四大核心特性的支持(自动配置、起步依赖、Spring Boot CLI、Actuator)让我们无需配置开箱即用)</

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

浅谈路由器基本结构与工作原理

目录 一、结构 1.1 输入端口 1.2 交换结构 1.3 输出端口 1.4 路由选择处理器 二、输入端口处理和基于目的地转发 三、交换 四、输出端口处理 五、何时出现排队 5.1 输入排队 5.2 输出排队 一、结构 下图是一个通用路由器体系结构的总体试图视图&#xff0c;其主要由…

亚信安慧AntDB在数据可靠性和系统安全中的实践

亚信安慧AntDB以持续创新和技术进步为理念&#xff0c;不断优化性能和功能&#xff0c;至今已经保持了15年的平稳运行。这一漫长的历程并非偶然&#xff0c;而是源于AntDB团队对技术的不懈探索和追求。他们始终秉承着“永不停歇&#xff0c;永不满足”的信念&#xff0c;将技术…

openwrt中时间同步ntp使用

前言 openwrt开发中&#xff0c;我们可能遇到这样需求&#xff0c;使用路由器支持局域网内设备ntp授时功能。 作者&#xff1a;羽林君 转载授权以及围观&#xff1a;欢迎关注微信公众号&#xff1a;羽林君 或者添加作者个人微信&#xff1a;become_me ntp是什么 NTP&#…

STM32-V5开发板和树莓派的区别介绍

STM32-V5开发板和树莓派是两种不同类型的嵌入式开发平台&#xff0c;它们在设计理念、性能、用途和编程方式上都有所区别。 STM32-V5开发板 STM32-V5开发板是基于STM32微控制器的开发平台&#xff0c;通常用于嵌入式系统开发、教学和实验。 区别&#xff1a; - **核心*…

冒泡排序,详详解解

目录 基本概念&#xff1a; 上图&#xff1a; 核心思路&#xff1a; 基本步骤&#xff1a; 关键&#xff1a; 代码核心&#xff1a; 补充&#xff1a; 代码&#xff08;规范&#xff09; &#xff1a; 代码&#xff08;优化&#xff09;&#xff1a; 今天我们不刷力扣了&…

【Node.js从基础到高级运用】十二、身份验证与授权:JWT

身份验证与授权是现代Web应用中不可或缺的部分。了解如何在Node.js应用中实施这些机制&#xff0c;将使你能够构建更安全、更可靠的应用程序。本文将引导你通过使用JWT实现用户注册、登录和权限控制的过程。 JWT&#xff08;Json Web Token&#xff09; JWT是一种用于双方之间…

使用HttpRequest工具类调用第三方URL传入普通以及文件参数并转换MultipartFile成File

使用HttpRequest工具类调用第三方URL传入普通以及文件参数 一、依赖及配置二、代码1、模拟第三方服务2、调用服务3、效果实现 一、依赖及配置 <!--工具依赖--><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId&g…

IP在网络通信中的重要作用

IP&#xff0c;全称Internet Protocol&#xff0c;即网际互连协议&#xff0c;是TCP/IP体系中的网络层协议。IP作为整个TCP/IP协议族的核心&#xff0c;是构成互联网的基础。它的作用重大且深远&#xff0c;下面将详细阐述IP的定义及其在网络通信中的重要作用。 首先&#xff0…

.NET高级面试指南专题十七【 策略模式模式介绍,允许在运行时选择算法的行为】

介绍&#xff1a; 策略模式是一种行为设计模式&#xff0c;它允许在运行时选择算法的行为。它定义了一系列算法&#xff0c;将每个算法封装到一个对象中&#xff0c;并使它们可以互相替换。这使得算法可独立于使用它的客户端变化。 原理&#xff1a; 策略接口&#xff08;Strat…

【JavaScript 漫游】【036】CORS 通信总结

文章简介 CORS 是一个 W3C 标准&#xff0c;全称是“跨域资源共享”&#xff08;Cross-origin resource sharing&#xff09;。它允许浏览器向跨域的服务器&#xff0c;发出 XMLHttpRequest 请求&#xff0c;从而克服了 AJAX 只能同源使用的限制。 本篇文章为【JavaScript 漫…

Frustum PointNets for 3D Object Detection from RGB-D Data(2018)

3D空间的几何和拓扑结构 直接在3D空间操作可以更自然的参数化以及捕捉 重复、平面、对称等几何结构 2. Related Work 3D Object Detection from RGB-D Data Front view image based methods&#xff08;只是介绍了一种表示方法&#xff09; Bird’s eye view based methods&a…

【Ubuntu20.04】Clion 配置 Libtorch + OpenCV

首先根据自己的CUDA版本安装正确对应的cuda和cudnn并进行配置。 这里安装的是cuda-11.3版本&#xff0c;以下基于这个版本进行安装。 1. 安装 Clion 因为Clion更容易直接编写CMakelists.txt&#xff0c;所以使用Clion作为IDE。 需要在File -> Setting -> CMake的CMake…

C# wpf 使用GDI实现截屏

wpf截屏系列 第一章 使用GDI实现截屏&#xff08;本章&#xff09; 第二章 使用GDI实现截屏 第三章 使用DockPanel制作截屏框 第四章 实现截屏框热键截屏 第五章 实现截屏框实时截屏 第六章 使用ffmpeg命令行实现录屏 文章目录 wpf截屏系列前言一、导入gdi32方法一、NuGet获取…

ChatGPT赋能遥感研究:精准分析处理遥感影像数据,推动科研新突破

遥感技术主要通过卫星和飞机从远处观察和测量我们的环境&#xff0c;是理解和监测地球物理、化学和生物系统的基石。ChatGPT是由OpenAI开发的最先进的语言模型&#xff0c;在理解和生成人类语言方面表现出了非凡的能力。重点介绍ChatGPT在遥感中的应用&#xff0c;人工智能在解…

数字排列 - 华为OD统一考试(C卷)

OD统一考试&#xff08;C卷&#xff09; 分值&#xff1a; 200分 题解&#xff1a; Java / Python / C 题目描述 小明负责公司年会&#xff0c;想出一个趣味游戏: 屏幕给出 1−9 中任意 4 个不重复的数字,大家以最快时间给出这几个数字可拼成的数字从小到大排列位于第 n 位置…

Linux操作系统——线程概念

1.什么是线程&#xff1f; 在一个程序里的一个执行路线就叫做线程&#xff08;thread&#xff09;。更准确的定义是&#xff1a;线程是“一个进程内部的控制序列”一切进程至少都有一个执行线程线程在进程内部运行&#xff0c;本质是在进程地址空间内运行在Linux系统中&#x…

K8S上安装LongHorn(分布式块存储) --use

要在 Kubernetes上安装 LongHorn&#xff0c;您可以按照以下步骤进行操作&#xff1a; 准备工作 将LongHorn只部署在k8s-worker5节点上。 给节点设置污点 $. kubectl taint nodes k8s-worker5 longhorn:PreferNoSchedule # 参考 # # 删除污点 # kubectl taint nodes k8s-w…

【趣味项目】一键生成LICENSE

【趣味项目】一键生成LICENSE 项目地址&#xff1a;GitHub(最新版本) | GitCode(旧版本) 项目介绍 一款用于自动生成开源项目协议的工具&#xff0c;可以通过 npm 进行安装后在命令行使用&#xff0c;非常方便 使用方式 npm install xxhls/get-license -gget-license --l…

MATLAB画图:错误使用plot无效的颜色或线型...

指定绘图颜色 - MATLAB & Simulink (mathworks.com) 使用matlab画图&#xff0c;想要使用其他颜色时&#xff0c;如想要从上面的颜色类型修改为下面的颜色类型 只需要在后面修改color属性即可 s1 plot(C3, LineWidth,2); s1.Color [0.8500 0.3250 0.0980]; hold on s2 …

node.js入门—day02

个人名片&#xff1a; &#x1f60a;作者简介&#xff1a;一名大二在校生 &#x1f921; 个人主页&#xff1a;坠入暮云间x &#x1f43c;座右铭&#xff1a;给自己一个梦想&#xff0c;给世界一个惊喜。 &#x1f385;**学习目标: 坚持每一次的学习打卡 文章目录 什么是单线程…