当前位置: 首页 > news >正文

SpringMVC课时1

一:SpringMVC

Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,负责表述层(控制层)实现简化。

由于 Spring MVC 本身就是 Spring 框架的一部分,和 Spring 框架是无缝集成。

二:SSM的主要作用

三:SpringMVC的原理架构图

四:SpringMVC 5 大组件

  1. DispatcherServlet 前端控制器  [ CEO ]  web.xml/初始化配置类配置生效

          整个流程处理的核心,接收所有请求,协同其它组件

     2.HandlerMapping  处理器映射器  [秘书]  需要加入到Web IoC容器

       存储url-->Controller映射关系.根据请求路径,找到处理请求的Controller

    3. HandlerAdapter 处理器适配器   [经理]  需要加入到Web IoC容器

        简化处理请求参数和处理响应数据数据,调用控制器Controller

    4. Controller  控制器  [打工人]   需要加入到IoC容器

        程序员自己定义,处理业务请求,调用service层,最终返回响应结果.

    5. ViewResolver 视图解析器   [财务]

        简化模版视图页面查找,将ModelView对象中view逻辑视图生成真实的物理视图

     如:index---->/index.jsp

五:SpringMVC构建web项目步骤,注解+配置类的方式实现 (推荐)

         1.maven创建web项目

     2.导入相关jar包坐标,以及引入tomcat插件

<dependencies>
    <!--spring-mvc-->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>6.0.6</version>
    </dependency>
    <!-- web相关依赖 servlet  -->
    <dependency>
        <groupId>jakarta.platform</groupId>
        <artifactId>jakarta.jakartaee-web-api</artifactId>
        <version>9.1.0</version>
        <scope>provided</scope>
    </dependency>
    <!--jsp需要依赖! jstl-->
    <dependency>
        <groupId>jakarta.servlet.jsp.jstl</groupId>
        <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
        <version>3.0.0</version>
    </dependency>
    <!-- jstl核心坐标-->
    <dependency>
        <groupId

相关文章:

SpringMVC课时1

一:SpringMVC Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,负责表述层(控制层)实现简化。 由于 Spring MVC 本身就是 Spring 框架的一部分,和 Spring 框架是无缝集成。 二:SSM的主要作用 三:SpringMVC的原理架构图 …...

【小白学机器学习30】样本统计的核心参数:均值/期望,方差,标准差,标准值。

目录 1 为什么我们要搞出来这么多指标/参数&#xff1f; 1.1 描述统计学为啥要搞出来这么多复杂的参数&#xff1f;什么平均值等 1.2 所以&#xff0c;需要用少数几个关键数据代表1群数据 1.2.1 平均值 1.2.2 平均值的问题&#xff1a;方差 2 代表性的数据1&#xff1a;…...

flink1.17.2安装和使用

版本&#xff1a;flink1.17.2 单机模式 配置 # 为了在别处连接flink-web rest.bind-address: 0.0.0.0命令 # 启动集群 bin/start-cluster.sh # 关闭集群 bin/stop-cluster.sh使用 使用浏览器连接 ip:8081 使用flink-web...

C向C++入门-- C语言填坑

1.c参考文档 我们在学习c中需要查找参照信息到是从这些文档中得到。 https://legacy.cplusplus.com/reference/ 标准只更新到C11&#xff0c;但是以头⽂件形式呈现&#xff0c;内容⽐较易看好懂。 https://zh.cppreference.com/w/cpp https://en.cppreference.com/w/ 后两…...

扫雷游戏(C语言详解)

扫雷游戏&#xff08;C语言详解&#xff09; 放在最前面的1、前言&#xff08;扫雷游戏的简介&#xff09;2、扫雷游戏的规则&#xff08;简易版&#xff09;3、代码实现&#xff08;3.1&#xff09;提醒一下&#xff1a;( i ) 提醒1&#xff1a;( ii ) 提醒2&#xff1a; &…...

信刻全自动光盘摆渡系统

随着各种数据传输、储存技术、信息技术的快速发展&#xff0c;保护信息安全是重中之重。各安全领域行业对跨网数据交互需求日益迫切。针对于业务需要与保密规范相关要求&#xff0c;涉及重要秘密信息&#xff0c;需做到安全的物理隔离&#xff0c;并且保证跨网数据高效安全传输…...

计算机网络的数据链路层

计算机网络的数据链路层 数据链路层是OSI参考模型中的第二层&#xff0c;它位于物理层之上&#xff0c;网络层之下。数据链路层的主要功能是在物理层提供的服务的基础上向网络层提供服务&#xff0c;其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。…...

从0开始搭建一个生产级SpringBoot2.0.X项目(三)SpringBoot接口统一返回和全局异常处理

前言 最近有个想法想整理一个内容比较完整springboot项目初始化Demo。 SpringBoot接口统一返回和全局异常处理&#xff0c;使用ControllerAdvice ExceptionHandler 的组合来实现。 一、pom文件新增依赖 <dependency><groupId>com.alibaba</groupId><ar…...

Mybatis-plus-扩展功能

Mybatis-plus-扩展功能 一&#xff1a;代码生成器 AutoGenerator 是 MyBatis-Plus 的代码生成器&#xff0c;通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码&#xff0c;极大的提升了开发效率。 功能的演示&#xff1a…...

【AI辅助】AWS Toolkit+AmazonQ

#偶然看到网上某up主用的这个AI工具&#xff0c;感觉还挺实用的&#xff0c;推荐大家~我们不可阻挡AI的攻势&#xff0c;但是成为利用它的人&#xff0c;也是反侵占的方式呢# AWS toolkit Amazon Q 安装 VScode--Extensions--搜索工具--安装 安装后&#xff0c;工具栏会多出对…...

云手机简述(概况,使用场景,自己部署云手机)

背景 最近经常会看到云手机的相关广告&#xff0c;手痒难耐&#xff0c;了解一下。 我的主要需求&#xff1a; Android 已 root&#xff0c;能够做一些自动化等高级功能。能够通过 远程adb 控制手机。能够尽量的少花钱&#xff0c;最好是能够提供动态创建删除手机的方式&…...

Java已死,大模型才是未来?

作者&#xff1a;不惑_ 引言 在数字技术的浪潮中&#xff0c;编程语言始终扮演着至关重要的角色。Java&#xff0c;自1995年诞生以来&#xff0c;便以其跨平台的特性和丰富的生态系统&#xff0c;成为了全球范围内开发者们最为青睐的编程语言之一 然而&#xff0c;随着技术的…...

NCCL安装(Ubuntu等)

目录 一、NCCL的定义二、安装NCCL的原因1、加速多GPU通信2、支持流行的深度学习框架3、提高计算效率4、易于使用和集成5、可扩展性 三、NCCL安装方法1、下载安装包2、更新APT数据库3、使用APT安装libnccl2包&#xff0c;另外&#xff0c;如果需要使用NCCL编译应用程序&#xff…...

加载视频显示 - python 实现

#-*-coding:utf-8-*- # date:2021-03-21 # Author: DataBall - Xian # Function: 加载视频并显示import cv2 if __name__ "__main__":#加载视频cap cv2.VideoCapture(./video/1.mp4)while True:ret, img cap.read()# 获取相机图像if ret True:# 如果 ret 返回值为…...

数据结构模拟题[五]

数据结构试卷&#xff08;五&#xff09; 一、选择题 (20 分) 1&#xff0e;数据的最小单位是&#xff08; &#xff09;。 (A) 数据项 (B) 数据类型 (C) 数据元素 (D) 数据变量 2&#xff0e;设一组初始记录关键字序列为 (50 &#xff0c;40&#xff0c; 95&#xff0c;20…...

IDEA切换窗口快捷键失效

问题描述&#xff1a; 在idea中&#xff0c;如果切换窗口的快捷键&#xff08;Alt Tab&#xff09;失效了&#xff0c;可以通过清除缓存的方式修复...

QT中使用图表之QChart绘制X轴为日期时间轴的折线图

显然X轴是日期时间轴的话&#xff0c;那么我们使用的轴类就得是QDateTimeAxis QChart中日期时间轴的精度是毫秒 因此图表里面的数据的x值需要是一个毫秒数&#xff0c;才能显示出来 --------------------------------------------------------------------------------------…...

【传知代码】短期电力负荷(论文复现)

&#x1f351;个人主页&#xff1a;Jupiter. &#x1f680; 所属专栏&#xff1a;传知代码 欢迎大家点赞收藏评论&#x1f60a; 目录 备注前言介绍问题背景复现&#xff1a;一. 多维特征提取的提取框架&#xff1a;二. 论文中进行性能测试的MultiTag2Vec-STLF模型&#xff1a;三…...

ubuntu20.04 加固方案-设置重复登录失败后锁定时间限制

一、编辑PAM配置文件 打开终端。 使用文本编辑器&#xff08;如vim&#xff09;编辑/etc/pam.d/common-auth文件。 sudo vim /etc/pam.d/common-auth 二、添加配置参数 在打开的配置文件中&#xff0c;添加或修改以下参数&#xff1a; auth required pam_tally2.so deny5 un…...

【综合算法学习】(第十三篇)

目录 解数独&#xff08;hard&#xff09; 题目解析 讲解算法原理 编写代码 单词搜索&#xff08;medium&#xff09; 题目解析 解析算法原理 编写代码 解数独&#xff08;hard&#xff09; 题目解析 1.题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09;…...

实战演练:如何利用SQLMap快速检测银行储物柜管理系统的CVE-2023-0562漏洞

实战指南&#xff1a;SQLMap在银行储物柜管理系统漏洞检测中的高效应用 银行储物柜管理系统作为金融机构关键基础设施&#xff0c;其安全性直接关系到客户资产安全。近年来曝光的CVE-2023-0562漏洞再次提醒我们&#xff0c;即使是基础防护措施也可能存在致命缺陷。本文将手把手…...

别再只盯着IOU了!手把手拆解DeepSort级联匹配,看它如何用‘优先级’解决ID跳变

别再只盯着IOU了&#xff01;手把手拆解DeepSort级联匹配&#xff0c;看它如何用‘优先级’解决ID跳变 当你在监控视频中看到行人ID突然从"007"跳变成"1024"时&#xff0c;是否曾怀疑自己的多目标跟踪系统被黑客入侵&#xff1f;这种被称为ID跳变&#xff…...

从光纤通信到超快光学:非线性薛定谔方程仿真在工程研究中的5个典型应用场景

从光纤通信到超快光学&#xff1a;非线性薛定谔方程仿真在工程研究中的5个典型应用场景 当一束激光脉冲在光纤中传输时&#xff0c;其强度分布会随时间发生微妙变化——这种看似简单的物理现象背后&#xff0c;隐藏着非线性光学中最富魅力的数学描述&#xff1a;非线性薛定谔方…...

使用OpenGL纹理数组实现高精度实时Lut滤镜

之前写过的文章(使用OpenGL实现滤镜转换的一种思路_轮子初级玩家-CSDN博客)&#xff0c;我把一整个Lut滤镜图作为单个纹理贴图&#xff0c;把图像原颜色采样后当作坐标&#xff0c;然后从lut纹理中查找出替换颜色实现滤镜功能&#xff0c;这是最简易的一种滤镜实现方式&#xf…...

Linux实现简易版Shell的代码详解

一、程序流程分析我们日常使用Bash时&#xff0c;通过输入命令执行相应的操作&#xff0c;比如&#xff1a;那么&#xff0c;Bash是如何进行工作的呢&#xff1f;观察一下&#xff0c;就会发现&#xff0c;首先Bash会打印命令行提示符&#xff0c;包括当前用户、主机名以及路径…...

Nature Microbiology|质粒驱动的抗菌素耐药性进化:插入序列介导的基因失活新机制

背景 抗菌素耐药性&#xff08;AMR&#xff09;是全球公共卫生面临的严峻挑战。细菌进化出耐药性的主要途径包括基因突变和通过水平基因转移&#xff08;Horizontal Gene Transfer, HGT&#xff09;获得外源耐药基因。在后者中&#xff0c;接合质粒扮演了核心角色&#xff0c;它…...

用IDM抓取网页动态资源

动态资源抓取的基本原理动态资源通常由JavaScript异步加载或通过API接口返回&#xff0c;传统爬虫难以直接获取。IDM&#xff08;Internet Download Manager&#xff09;通过监控浏览器网络请求&#xff0c;可捕获这些动态生成的资源链接。配置IDM捕获动态资源启用IDM的浏览器集…...

helm部署skywalking链路追踪 java

添加helm仓库 skywalking取别名 sw 名称可以任意写helm repo add sw https://apache.jfrog.io/artifactory/skywalking-helm helm repo list这里 sw 要与上面的 sw 名称 一样 从 Helm 仓库下载 SkyWalking 的 Chart 包&#xff0c;–untar 并自动解压到当前目录helm pull sw/s…...

车ECU安全刷写(Secure Flashing/Programming)

车 ECU 安全刷写&#xff0c;核心是UDS 协议 安全访问 双分区回滚 供电 / 校验 / 合规全闭环。一、核心基础1. 定义与目标ECU 安全刷写&#xff1a;通过 OBD/CAN/Ethernet&#xff0c;按 ISO14229&#xff08;UDS&#xff09;、ISO15765 标准&#xff0c;对发动机 / 变速箱 …...

OpenClaw学习助手:Qwen3.5-9B-AWQ-4bit自动整理网课截图笔记

OpenClaw学习助手&#xff1a;Qwen3.5-9B-AWQ-4bit自动整理网课截图笔记 1. 为什么需要自动化学习助手 作为一名经常通过网课充电的技术从业者&#xff0c;我长期被一个痛点困扰&#xff1a;每次听完两小时的课程&#xff0c;手机相册里会堆满几十张截图&#xff0c;里面有老…...