SpringMVC基于注解使用

news/2024/9/17 23:41:05/ 标签: java, 前端, maven, spring, servlet, tomcat

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.ppmy.cn/news/1525058.html

相关文章

element form rules 验证数组对象属性时如何写判断规则

需求:一个el-form-item里放了2个下拉选择框,规定是最少选择一个,最多这俩都选择值;下拉框的值设置为对象了,所以这俩select的值组成了一个数组里的两个对象 逻辑:感觉只需要把第一个下拉框值(即…

默认端口被占用后,如何修改Apache2 端口

你可以通过以下步骤修改 Apache2 的默认端口(80 端口): 1. 修改 Apache2 配置文件 首先,你需要编辑 Apache2 的端口配置文件: sudo nano /etc/apache2/ports.conf在文件中,你会看到类似以下的内容&#…

【PostgreSQL里的restartpoint重启点】

不知道大家有没有关注过,配置文件里archive_cleanup_command参数的注释部分有着这么一句"command to execute at every restartpoint",意思是在每个restartpoint时执行的命令。 提起checkpoint大家可能比较熟悉,对于这个restartpoint&#xff…

fs::copy中的recursive和overwriting的区别是什么,如何一起使用

fs::copy中的recursive和overwriting参数关注于文件复制的不同方面: recursive:当设置为true时,允许复制目录及其所有子目录和文件。如果设置为false,则只复制单个文件或空目录。 overwriting:当设置为true时&#xf…

vulnhub靶机:21 LTR: Scene1

下载 下载地址:https://www.vulnhub.com/entry/21ltr-scene-1,3/ 导入靶机 一直按默认的来,一直下一步 修改网卡 修改靶机和 kali 攻击机网络模式为仅主机模式 把仅主机模式的 IP 修改为 192.168.2.0 信息收集 主机发现 arp-scan -l 靶机 IP 是 192.…

golang panic

在 Go 语言中,panic 是一种用于处理异常情况的机制。当程序遇到无法继续执行的错误时,可以使用 panic 来引发运行时错误。以下是关于 panic 的一些关键点和示例。 1. 使用 panic 当调用 panic 时,程序会停止执行当前函数,并开始…

传承中华文脉·弘扬北疆文化“四季内蒙古演出季”区内外文艺院团交流演出活动即将启动

为推进“北疆文化”品牌建设,由内蒙古自治区文化和旅游厅、呼和浩特市人民政府主办,呼和浩特市文化旅游广电局承办的传承中华文脉弘扬北疆文化——“四季内蒙古演出季”区内外文艺院团交流演出活动将于9月14日至11月期间在呼和浩特市举办。 传承中华文脉…

Go入门指南(The Way to Go) 完整版PDF

The Way To Go可以说是入门 Go 的经典书籍,这本书有内容丰富各种资料链接,这是截止到目前,大叔看到的写得最好的go 语言教材,非常详细.一口气读下来,舍不得放手,大叔强烈推荐你去学习 百度网盘分享

环境变量和本地变量

什么是环境变量? 环境变量是操作系统里保存的具有特殊用途的参数 常见的环境变量 PATH:存放操作系统默认的搜索路径 HOME:当前的登入账户 USER:当前的使用者 如何查询环境变量? echo $name(环境变量名…

数学建模笔记—— 线性规划

数学建模笔记—— 线性规划 线性规划1. 模型引出1.1 线性规划模型的三要素1.2 线性规划模型建立步骤1.3 线性规划的表现形式1.4 线性规划的模型特点 2.典型例题3. python代码求解3.1 求解KK升级的问题3.2 求解投资收益问题 线性规划 在人们的生产实践中,经常会遇到…

『功能项目』管理器基类【38】

我们打开上一篇37单例模式框架的项目&#xff0c; 本章要做的事情是编写管理器基类 首先创建脚本&#xff1a;ManagerBase.cs using UnityEngine; public abstract class ManagerBase : MonoBehaviour{public virtual void Init() { } } public class ManagerBase<T> : …

Linux 防火墙:iptables (二)

文章目录 SNAT 原理与应用SNAT 应用环境SNAT 原理SNAT 转换前提条件SNAT 格式SNAT 转换规则配置 DNAT 原理与应用DNAT 应用环境DNAT 原理DNAT 转换前提条件DNAT 格式DNAT 转换规则配置 iptables 规则的备份和还原导出&#xff08;备份&#xff09;所有表的规则导入&#xff08;…

【网络通信基础与实践第二讲】包括互联网概述、互联网发展的三个阶段、互联网的组成、计算机网络的体系结构

一、互联网概述 计算机网络是由若干节点&#xff08;node&#xff09;和连接这些节点的链路&#xff08;link&#xff09;组成。 网络之间还可以通过路由器互联起来&#xff0c;这就构成了一个覆盖范围更大的计算机网络。这样的网络称为互联网。 网络把许多计算机连接在一起…

如何将本地项目上传到GitHub(SSH连接)

在个人GitHub中新建项目(远程仓库)&#xff0c;添加一个README文件&#xff0c;方便后面验证 记住这个默认分支&#xff0c;我这里是main&#xff0c;你的可能是master或其他 先复制下SSH地址 在项目文件夹中右键打开Git命令行 初始化本地仓库&#xff0c;同时指定默认分支为ma…

微信小程序登录与获取手机号 (Python)

文章目录 相关术语登录逻辑登录设计登录代码 相关术语 调用接口[wx.login()]获取登录凭证&#xff08;code&#xff09;。通过凭证进而换取用户登录态信息&#xff0c;包括用户在当前小程序的唯一标识&#xff08;openid&#xff09;、微信开放平台账号下的唯一标识&#xff0…

C语言---程序设计练习题目及学习方法1

学习方法 要多练习 在这些题目中的代码和题目 自己动手去敲练习也是在熟悉语法&#xff0c;写代码第一步就是熟悉语法练习是在锻炼编程思维&#xff0c;把实际问题转换为代码的能力 学会画图 画图去理解内存&#xff0c;理解指针这些比较难懂的知识画图可以更好的理清思路辅助…

Linux环境下安装FFmpeg的教程

下面是一个关于在Linux环境下安装FFmpeg的教程&#xff0c;它结合了理论知识与实际操作步骤。请注意&#xff0c;本教程假设您具备基本的Linux命令行使用经验&#xff0c;并且您的系统已经安装了必要的开发工具包。 FFmpeg简介 FFmpeg 是一个强大的跨平台音视频处理工具集&am…

详解Diffusion扩散模型:理论、架构与实现

本文深入探讨了Diffusion扩散模型的概念、架构设计与算法实现&#xff0c;详细解析了模型的前向与逆向过程、编码器与解码器的设计、网络结构与训练过程&#xff0c;结合PyTorch代码示例&#xff0c;提供全面的技术指导。 关注TechLead&#xff0c;复旦AI博士&#xff0c;分享A…

Linux网络:应用层协议http/https

认识URL URL是我们平时说的网址 eg&#xff1a;http常见的URL http://user:passwww.example.jp:80/dir/index.htm?uid1#ch1 注意&#xff1a; 服务器地址就是域名&#xff0c;相当于服务器ip地址 像http服务绑定80端口号&#xff0c;https服务绑定443端口。ssh服务端口绑定…

leetcode练习 单词搜索

给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的单元格内的字母构成&#xff0c;其中“相邻”单元格是那些水平相邻或垂直相…