JavaEE进阶(统一功能处理)6/2

news2024/11/18 14:00:42

目录

1.使用拦截器实现用户登录的校验功能

2.统一数据格式的返回

3.统一异常的返回


1.使用拦截器实现用户登录的校验功能

Spring拦截器

关键步骤1.实现HandlerInterceptor接口

2.重写preHeadler方法,在方法中编写自己的业务代码

将拦截器添加到配置文件中,并且设置拦截的规则

1.创建一个类,实现 WebMvcConfigurer接口

2.重新里面的addInterseptor方法 ,把刚才创建的普通的拦截器new进去

给当前项目配一个前缀

为所有路径添加前缀,这时候如果再用之前的就会访问不到了 

还可以直接在配置文件中配置,并且配置文件中的优先级更高 

2.统一数据格式的返回

步骤:

1.在类上添加@ControllerAdvice,实现一个ResponseBodyAdvice 接口

2.重写supports和beforeBodyWrite方法

注意要特别处理body为String的类型 

3.统一异常的返回

@ControllerAdvice 控制器增强(Advice)

给一个方法加上@ExceptionHandler的时候意味着当项目中出现异常的时候要通知前端 

步骤:

1.        创建一个类并在类上添加注解@ControllerAdvice

2.        使用@ExceptionHandler来订阅并处理异常

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

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

相关文章

【剑指offer】二维数组中的查找(详细解析)

文章目录 题目思路代码实现 题目 题目链接入口:牛客:JZ4 二维数组中的查找 思路 1.核心考点 (1) 数组相关:二维数组(矩阵)。 (2) 特性观察:在一个二维数组…

如何使用宝塔面板搭建网站(最后一步!上传文件至宝塔面板)

这里就是我们搭建宝塔面板的最后一步了,把我们的PHP文件上传到宝塔面板上,就可以通过因特尔网络访问我们的网址了。 第一步:基础安装 必须是Linux服务器 不支持window服务器 最低要求配置1核1G当然再低些也能运行但是不建议 要求服务器环…

值得收藏 | 脑机交互作用研究

神经损伤和疾病对许多人的生活产生了巨大的影响,导致了许多运动障碍和日常任务无法独立完成。皮质假体系统通过脑机接口(BCI)接收一个动作命令来执行所需的位置,从而使得经历神经损伤的人能够实现部分功能恢复。BCI技术可以在侵入…

chatgpt赋能python:Python创建二维列表的方法

Python创建二维列表的方法 Python是一种高级编程语言,它的灵活性和功能强大的库使其成为数据科学和机器学习的最佳工具之一。其中一个常用的数据结构是二维列表,本文将介绍如何在Python中创建一个二维列表。 什么是二维列表? 在Python中&a…

华为OD机试真题 Java 实现【表示数字】【牛客练习题】

一、题目描述 将一个字符串中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。 数据范围:字符串长度满足1≤n≤100 。 二、输入描述 输入一个字符串。 三、输出描述 字符中所有出现的数字前后加上符号“*”,其…

arcgis for javascript中的TileLayer(缓存地图服务图层)

一、什么是图层 要理解TileLayer图层,咱要先搞清楚在arcgis中图层的概念: ArcGIS for JavaScript中的图层是数据的可视化链接。简单来说,它可以将数据显示在地图上。 图层是地图上的一个图形单元,可以是点、线、面、文本等&#…

复杂的HANASQL 列表转多行

一 前言 基于HANA的内存数据库的强大性能, SAP建议把业务逻辑下沉到HANA中计算.以便减少应用服务器的负担,让程序性能更好一些. SAP本身的一些复杂的业务逻辑比如MRP运算(MD01)也有了新的事务 MD01N (MRP LIVE),性能得以巨大的提升 报表类的数据分析程序尤其适用此原则. 动态报…

淘宝监控竞品sku数据接口

电商竞品数据监控查询可以通过以下几个步骤实现: 确定需要监控的竞品:首先需要明确自己店铺的产品定位和竞争对手,选择需要监控的竞品。 选择监控工具:根据需求和预算选择适合自己的电商竞品数据监控工具,例如谷歌分析…

nvm管理node的多版本,任意安装,切换不同nodejs版本

1.nvm安装包下载: https://github.com/coreybutler/nvm-windows/releases window操作系统选择安装包直接安装: 如果已经在使用的nodejs无需卸载,安装过程中会提示是否需要管理已经安装的版本,选择“是”。 2.安装完成之后&…

云计算——云计算部署形成及应用

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​ 目录 前言 一.云计算部署形式 1.私有云 (1)私有云优点 &#x…

计划

img { margin: auto; display: block } 优化器的作用是什么?例举一下神经网络中常用的优化器? 优化器作用:求出让损失函数最小化的参数。 常用优化器: 1、Adam 关联所有样本的梯度,便于求解全局最优解,始终…

有公网IP,如何设置端口映射实现访问?

很多中小型公司或个人会根据自身需求自建服务器,或者将自己内网的服务、应用发布到外网,实现异地访问,如远程桌面、网站、数据库、公司的管理系统、FTP、管家婆、监控系统等等。 没接触过的人可能会觉得这个很难,实际上使用快解析…

国内镜像+JDK下载地址+IDEA专业安装版和免安装版下载地址

一、OracleJDK下载地址 JDK版本Oracle JDK新增特性官网原版下载地址JDK 1.0-已下线JDK 1.1-已下线JDK 1.2-已下线JDK 1.3-已下线JDK 1.4-已下线JDK 5.0自动装箱、泛型、枚举、增强的for循环、注解等已下线JDK 6JDBC 4.0、Pluggable Annotation Processing API、JAX-WS、StAX等…

Redis底层学习(六)—存储类型-ZSet篇

这里写目录标题 结构特点具体服务器操作命令底层结构应用场景 结构特点 适⽤场景:存储不重复且有序需求的数据,⽐如:学⽣的⾼考成绩。 它的内部采⽤“ 跳跃列表 ”实现,根据score进⾏排序 具体服务器操作命令 添加元素到zset中…

RedditVideoMakerBot 视频制作机器人自动生成视频搭建教程

https://github.com/elebumm/RedditVideoMakerBot搭建教程 RedditVideoMakerBot视频制作机器人 有些在抖音、快手上的视频获得了数百万的观看次数,你仔细分析他们的视频,他们唯一做的原创事情收集材料、然后拼接在一起。尤其是一些新闻类的视频&#xff…

深度学习-RepVGGNet

文章目录 前言一、RepVgg简介二、为什么训练时采用多分支结构三、为什么推理时使用单分支结构四、结构重参数化1、融合Conv2d和BN 前言 看yolonas代码,发现有QARepVgg网络,完全不懂,所以来补课,先看了RepVGG 这篇文章主要来自于霹…

模六十计数器(三)

文章目录 前言一、代码模板二、Verilog程序1、顶层模块2、计数模块3、显示模块 三、Testbench程序四、仿真波形五、实测结果总结 前言 又隔了将近一年,学习明德扬编程规范,重新编写模六十计数器程序,使其符合规范,并采用模板化与…

阿秀去面腾讯了(社招两年面试经验)

作者:阿秀 校招八股文学习网站:https://interviewguide.cn 小伙伴们大家好,我是阿秀。 前段时间说了自己换工作的事:阿秀离职了,虽然最后选择去了外企,但在换工作期间也看了不少机会,基本国内的…

独立开发变现周刊(第89期):一个 AI 小工具,两个月内赚7.3万美元

分享独立开发、产品变现相关内容,每周五发布。 目录 1、privateGPT: 可以和本地文档进行交互的聊天机器人2、chatbutler: 无代码可视化创建聊天机器人3、CommaFeed:可以自托管RSS阅读器开源项目4、roop: 一键深度换脸5、deeplearning: 吴恩达在推特上宣布…

搜索帮助demo:F4IF_INT_TABLE_VALUE_REQUEST 返回多列值

货铺QQ群号:834508274微信群不能扫码进了,可以加我微信SAPliumeng拉进群,申请时请提供您哪个模块顾问,否则是一律不通过的。进群统一修改群名片,例如BJ_ABAP_森林木。群内禁止发广告及其他一切无关链接,小程…