SpringMVC基于注解使用

news2024/9/22 4:18:30

01-拦截器介绍

首先在pom.xml里面加入springmvc的依赖

创建拦截类

在spring-mvc.xml配置拦截器配置

创建控制类测试

拦截器中处理方法之前的方法介绍

拦截器中处理方法之后,渲染之前的方法介绍

拦截器中处理方法之后,渲染之后的方法介绍

判断拦截器和过滤器先后的执行顺序

首先创建过滤器

然后执行此方法

首先先进入tomcat服务器,然后到过滤器前,然后进入前端控制器dispatcherservlet,然后到拦截器preHandle,然后执行方法,让执行拦截器的postHandle的方法,然后执行拦截的afterCompletion方法,然后执行拦截器的过滤后,

拦截器的过滤器的区别

什么时候用request什么时候用session

如果你直接访问admin.jsp的页面的话会报错,因为拦截器

在请求映射到对应的处理方法映射,实现类才是HandlerMethod如下图为自己创建的在控制类中的方法有RequestMapping映射

如果是视图控制器,实现类ParameterizableViewController如下图为视图控制器admin.jsp

实现登录页面的拦截,防止用户跳过登录直接到后台

首先创建@PostMapping请求是处理登录请的,@GetMapping请求是访问登录页面的,为啥要创建@GatMapping请求是因为login.jsp是在WEB-INF目录下的在此目录下是不能直接访问的,只能通过get请求转发到login,

表单展示

点击表单按钮后会请求post,然后会进入admin.jsp页面输出数据

给admin配置视图控制器,注意视图控制器只能在方法中没有此path才能生效,例如举个例子

如果配置login视图控制器就会失效因为在控制类中用@GetMapping配置了/login有了映射,所以视图控制器会失效

为了防止用户直接进入到后台,我们在spring-mvc中配置了不拦截get请求的/login()mvc:exclude-mapping,和要拦截所有请求的mvc:mapping path="/**"/,创建一个新的拦截器

CheckLoginInterceptor拦截器专门拦截admin页面在没有登录的情况下

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

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

相关文章

SAM2(Segment Anything Model 2)新一代分割一切大模型实战总结

Segment Anything Model 2(SAM 2)作为Meta公司发布的Segment Anything Model(SAM)的升级版本,在图像和视频分割领域展现出了显著的优点和特性。 论文连接:https://arxiv.org/pdf/2408.00714 Demo: https…

9月6号作业

1&#xff1a;.h文件 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QWidget> #include<QIcon> //图标类 #include<QLabel> //标签类 #include<QMovie> //动图类 #include<QLineEdit> //行编辑器类 …

黑马点评8——好友关注-SortedSet

文章目录 关注和取关共同关注Feed流实现方案分析推送到粉丝收件箱Feed流基于推模式实现关注推送功能 滚动分页查询收件箱的思路实现滚动分页查询 关注和取关 所以关注和取关就是简单的插入和删除数据库。 Overridepublic Result isFollow(Long followUserId) {// 1. 获取登录用…

J.U.C Review - Stream并行计算原理源码分析

文章目录 Java 8 Stream简介Stream单线程串行计算Stream多线程并行计算源码分析Stream并行计算原理Stream并行计算的性能提升 Java 8 Stream简介 自Java 8推出以来&#xff0c;开发者可以使用Stream接口和lambda表达式实现流式计算。这种编程风格不仅简化了对集合操作的代码&a…

无线信道中ph和ph^2的场景

使用 p h ph ph的情况&#xff1a; Rayleigh 分布的随机变量可以通过两个独立且相同分布的零均值、高斯分布的随机变量表示。设两个高斯随机变量为 X ∼ N ( 0 , σ 2 ) X \sim \mathcal{N}(0, \sigma^2) X∼N(0,σ2)和 Y ∼ N ( 0 , σ 2 ) Y \sim \mathcal{N}(0, \sigma^2)…

枚举: C++和Python实现鸡兔同笼问题

作者制作不易&#xff0c;关注、点赞、收藏一下吧&#xff01; 目录 1.Python实现 2.C实现 1.Python实现 首先&#xff0c;我们需要输入头和脚的数量: head int(input("请输入头的数量: ")) feet int(input("请输入脚的数量: ")) input() 实现输入…

优质的产业园都在怎么做运营?

产业园区作为区域经济发展的重要载体&#xff0c;其运营模式和管理水平直接影响着产业集聚的成效和区域经济的竞争力。在一线城市与新一线城市中&#xff0c;已经涌现出了一批以高效运营、创新服务为特色的优质产业园&#xff0c;今天&#xff0c;我们就城市标杆产业园的案例和…

10款古方突破1800亿元,康缘药业发力,市场迎井喷式增长……

在政策东风与市场需求的双重驱动下&#xff0c;中药创新领域正迎来前所未有的发展机遇。特别是古代经典名方制剂的研发与注册&#xff0c;正以前所未有的速度推进&#xff0c;不仅激发了行业的活力&#xff0c;也为患者带来了更多治疗选择。本文将深入探讨这一领域的最新动态&a…

828华为云征文|Flexus云服务器X实例快速部署在线测评平台,适用各种信息学教学

文章目录 如何选配Flexus云服务器X实例服务器HydroOJHOJ 服务器资源的选取基础配置实例规格镜像、存储、网络弹性公网IP云服务器名称 部署HydroOJ1.设置安全组、开放端口2.部署HydroOJ回到控制中心&#xff0c;远程登录 部署HOJ安装docker# 安装docker-compose部署HOJ 本篇幅为…

Vatee万腾平台:赋能企业,共筑智慧经济新高地

在智慧经济时代的大潮中&#xff0c;企业如何把握机遇&#xff0c;实现转型升级&#xff0c;成为行业内的佼佼者&#xff1f;Vatee万腾平台以其卓越的技术实力、前瞻性的战略眼光和全方位的服务体系&#xff0c;正逐步成为企业数字化转型的坚实后盾&#xff0c;赋能企业&#x…

Day-06-QFileDialog文件操作

一、实现打开文件选择对话框 1、程序演示 2、相关代码 void Widget::on_QFileDialog_clicked() {QString fileName QFileDialog::getOpenFileName(this, tr("Open File"),"D:/QT project/", /*注意修改自己的文件打开地址*/tr("Text (*.txt *.d…

又一个新的开源AI项目!!【送源码】

好家伙&#xff0c;国内大模型发展太猛了&#xff01; 旗舰端侧模型面壁「小刚炮」系列进化为全新 MiniCPM 3.0 基座模型&#xff0c;再次以小博大&#xff0c;以 4B 参数&#xff0c;带来超越 GPT-3.5 的性能&#xff0c;强得不像端侧模型。 并且&#xff0c;量化后仅 2GB 内…

【Hadoop|HDFS篇】HDFS的读写流程

1. HDFS的写流程 1.1 剖析文件的写入 副本存储节点的选择问题&#xff1a; 第一个副本在Client所在的节点上&#xff0c;如果客户端在集群外&#xff0c;随机选一个。第二个副本在另一个机架的随机一个节点上。第三个副本在第二个副本所在的机架的随机节点上。 2. HDFS的写流…

Redis 集群:如何实现数据的高效分片与负载均衡

Redis 集群&#xff1a;如何实现数据的高效分片与负载均衡 一 . 基本概念二 . 数据分片算法2.1 哈希求余算法2.2 一致性哈希算法2.3 哈希槽分区算法核心思路Redis 集群中最多只能有 16384 个分片吗 ?为什么一定要是 16384 个槽位 ? 三 . 基于 docker 进行集群的搭建3.1 创建目…

《MaPLe: Multi-modal Prompt Learning》中文校对版

系列论文研读目录 文章目录 系列论文研读目录题目&#xff1a;《Maple&#xff1a;多模态提示学习》摘要1.简介2.相关工作视觉语言模型&#xff1a;提示学习&#xff1a;视觉语言模型中的提示学习&#xff1a; 3.方法3.1.回看CLIP编码图像&#xff1a;编码文本&#xff1a;Zero…

【vue、UI】使用 Vue2 和 Element UI 封装 CSV 文件上传组件,实现csv回显

文章目录 前言组件功能概述实现效果组件模板结构组件的核心逻辑1.数据属性定义2.方法拆解3.CSV 文件解析方法4. 错误处理方法 组件样式完整组件代码总结待优化的地方 前言 在 Vue2 项目中&#xff0c;我们经常需要封装一些可重用的组件来提升开发效率。本文将介绍如何使用 Vue…

Linux工程管理文件Makefile-入门篇

1.Makefile简介 Makefile是在Linux环境下 C/C 程序开发必须要掌握的一个工程管理文件。当你使用make命令去编译一个工程项目时&#xff0c;make工具会首先到这个项目的根目录下去寻找Makefile文件&#xff0c;然后才能根据这个文件去编译程序。那Makefile在编译过程中到底起了…

T7:咖啡豆识别

T7&#xff1a;咖啡豆识别 **一、前期工作**1.设置GPU,导入库2.导入数据3.查看数据 **二、数据预处理**1.加载数据2.可视化数据3.配置数据集 **三、构建CNN网络模型**1、手动搭建2、直接调用官方模型 **四、编译模型****五、训练模型****六、模型评估****七、预测**八、暂时总结…

Spring-容器:IOC-基于注解管理Bean

目录 一、基于注解管理Bean&#xff08;重点&#xff09;1.1、概述1.2、开启组件扫描1.2.1、指定要排除的组件1.2.2、仅扫描指定组件 1.3、使用注解定义Bean1.4、使用Autowired注入1.4.1、属性注入1.4.2、set注入1.4.3、构造方法注入1.4.4、形参注入1.4.5、无注解注入1.4.6、联…

自幂数判断c++

题目描述 样例输入 3 152 111 153样例输出 F F T 代码如下&#xff1a; #include<bits/stdc.h> using namespace std; long long m,a; int main(){cin>>m;for(int i1;i<m;i){cin>>a;long long ta,n[10],cc0,s0;while(t!0){//求位数与拆位n[cc]t%10;tt/…