springboot异常解决

news/2024/7/7 19:46:16/文章来源:https://www.cnblogs.com/Sun-Wind/p/18277744

问题解决

问题解释

出现这个问题表示拦截器或控制器的某个请求处理方法返回了一个与请求路径相同的视图名称,导致视图解析器循环地尝试解析并渲染这个视图,从而引发循环视图路径的异常。

问题分析

原先的java代码如下

@Controller
@RequestMapping("/interceptor")
public class InterceptorController {@RequestMapping("/test")public String test() {return "test";}
}

发现返回的字符串值是test,与请求路径相同,可能会导致循环视图问题
更改为test1后,依然报错无法解析视图名称 test1,因此抛出了异常。
思考:该问题是在配置拦截器的demo时产生,demo本身是一个对接口的测试,按理来说不需要返回视图,只需要结果即可。
@RestController 和 @Controller的区别如下:

  • @Controller是一个常规的MVC控制器,主要用于处理HTTP请求返回视图名字和数据。返回视图名时,会默认去寻找对应的JSP文件,然后渲染该视图。
  • @RestController是 @Controller 和 @ResponseBody 的组合。主要返回的是JSon数据和XML数据,而不是视图名。

在这个例子中,由于使用的是@Controller注解,所以springboot会优先寻找对应的JSP资源,如果没有找到,会报错,视图名称如果和请求路径相同,视图解析器会再一次尝试请求同一个路径,导致循环。
所以我们只需要把@Controller修改为@RestController即可

问题解决

更改后代码如下

@RestController
@RequestMapping("/interceptor")
public class InterceptorController {@RequestMapping("/test")public String test() {return "test";}
}

img
可成功运行

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp+thinkphp5实现微信登录

之前做了微信登录,所以总结一下微信授权登录并获取用户信息这个功能的开发流程。前言 之前做了微信登录,所以总结一下微信授权登录并获取用户信息这个功能的开发流程。 配置 1.首先得在微信公众平台申请一下微信小程序账号并获取到小程序的AppID和AppSecret https://mp.weixi…

用免费可视化工具做智慧城市,一屏实现城市统筹管理

在智慧城市的建设中,实现高效的统筹管理是至关重要的。通过免费可视化工具“山海鲸可视化”,这一目标可以轻松达成。山海鲸可视化是一款免费可视化工具,具备二三维融合、易用性、安全性以及高质量画面渲染等特色,是制作智慧城市可视化大屏的理想选择。山海鲸可视化的二三维…

【论文阅读】Position: What Can Large Language Models Tell Us about Time Series Analysis

原始题目:Position: What Can Large Language Models Tell Us about Time Series Analysis 中文翻译:立场:关于时间序列分析,大型语言模型能告诉我们什么 发表时间:2024-06-01 平台:ICML 文章链接:http://arxiv.org/abs/2402.02713 开源代码:NA摘要 时间序列分析对于理…

TDA4与Openvx技术开发示例

TDA4与Openvx技术开发示例 [TI TDA4 J721E]基于TDA4平台 FFmpeg / X264 的ARM平台移植 https://blog.csdn.net/AIRKernel/article/details/121483611 创建了开源的Demo演示案例库,后续会把Demo代码放到这个Gitee库里:TDA4/TI TDA4 https://gitee.com/tda4/ti-tda4欢迎大家加入…

遇到的线上问题之“动态数据源报错-recyle error java.lang.InterruptedException”

Druid出现DruidDataSource - recyle error - recyle error java.lang.InterruptedException: null异常排查与解决 一、线上的代码之前运行的都很平稳,突然就出现了一个很奇怪的问题,看错误信息是第三方框架Druid报出来了,连接池回收连接时出现的问题。[][ERROR][2024-07-01 …

遇到的线上问题之“recyle error java.lang.InterruptedException”

Druid出现DruidDataSource - recyle error - recyle error java.lang.InterruptedException: null异常排查与解决 一、线上的代码之前运行的都很平稳,突然就出现了一个很奇怪的问题,看错误信息是第三方框架Druid报出来了,连接池回收连接时出现的问题。[][ERROR][2024-07-01 …

构建高可用性、高性能和可扩展的Zabbix Server架构

简介 本教程讲解了一下如何设计构建一个高性能、高可靠、高扩展的Zabbix 监控集群。 架构图 架构图PDF下载: https://songxwn.com/file/Zabbix_HA.pdfPigsty 时序数据库集群 Zabbix Server 和 Grafana的数据都是存放在数据库的,而Zabbix性能很大程度取决于数据库。所以要搭建…

[JavaScript]作用域的“生产者”——词法作用域

本篇文章标题即摘要,就不赘述。 如果文中有不妥或不对的,多多交流。【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://www.cnblogs.com/cnb-yuchen/p/18252500 出自【进步*于辰的博客】参考笔记二,P43.3、P46.1、P9.3;笔记三,P70、P71。目录先…

NAT类型发现

一、前言之前一篇文章中,提出了一个判断NAT类型的方案。该方案是自己研究设计的,比较粗糙。近期研读了关于STUN的一些协议标准,其中RFC3489中就包含了判断NAT类型的标准方案。与自己设计的方案相比,标准方案有以下优点:1,利用了STUN协议中定义的一些属性,如CHANGE-REQUE…

全网最适合入门的面向对象编程教程:06 类和对象的Python实现-自定义类的数据封装

本文我们主要介绍了数据封装的基本概念和特性,如何设置自定义类的私有属性和私有方法,protect属性的概念和特点。全网最适合入门的面向对象编程教程:06 类和对象的 Python 实现-自定义类的数据封装 摘要: 本文我们主要介绍了数据封装的基本概念和特性,如何设置自定义类的私…

MOS管

MOS管 MOS 管是金属-氧化物半导体场效应晶体管的缩写,是一种重要的半导体器件。它具有以下特点和应用:特点:高输入阻抗:MOS 管的输入阻抗很高,可以减少对前级电路的影响。 开关速度快:MOS 管的导通和截止速度很快,适用于高频电路。 噪声低:MOS 管的噪声较低,适用于对噪…

三极管的作用和原理

目录 目录三极管的类型、作用和工作原理三极管的作用NPN三极管结构和工作原理:PNP三极管结构和工作原理:区别和应用场景三极管的类型、作用和工作原理三极管是一种重要的半导体器件,主要有两种类型:NPN和PNP。它们在结构、工作原理和应用上有显著的区别。三极管的作用 三极…

【Oracle】匹配一个字符中是否存在空格以及回车

【Oracle】匹配一个字符中是否存在空格以及回车 使用REGEXP_LIKE,然后使用[[:space:]] [[:space:]] 是一个 POSIX 字符类,匹配任何空白字符,包括空格、制表符、回车和换行 例子如下 SELECT R1, R2 FROM dual WHERE REGEXP_LIKE(R1, R2, [[:space:]]);您能读到这儿,我呢是发…

[淘宝/天猫/1688/京东]API接口数据采集分享

主流电商平台大数据采集API接口。在当今时代,从数据中挖掘价值的重要性愈发凸显,远超以往任何时期。现代企业渴望在任意设备上,无论身处何地,都能实时获取最新的相关信息。这正是数字化转型的核心所在,它同样适用于供应链的每一个环节。在当今时代,从数据中挖掘价值的重要…

@RequestMapping中的name属性解释

在Spring MVC中,@RequestMapping注解用于映射web请求到特定的处理方法。这个注解有多个属性,其中之一就是name。name属性通常用于为映射提供一个名称,这个名称可以在日志、文档或其他需要引用这个映射的地方使用。 在Spring MVC的上下文中,这允许你为特定的@RequestMapping…

6种Win10关闭自动更新方法介绍!

Win10自动更新 想寻找Win10关闭自动更新方法?Windows 10自动更新功能旨在确保您的系统始终运行最新的安全补丁和功能更新。然而,对于某些用户来说,频繁的更新可能带来不便。有时选择拒绝更新,系统会一直不停的提示系统更新;选择更新了,更新后一些软件或网络打印机等相关设…

【动画进阶】类 ChatGpt 多行文本打字效果

今天我们来学习一个有意思的多行文本输入打字效果,像是这样:这个效果其实本身并非特别困难,实现的方式也很多,在本文中,我们更多的会聚焦于整个多行打字效果最后的动态光标的实现。 也就是如何在文本不断变长,在不确定行数的情况下,让文字的最末行右侧处,一直有一个不断…

解决卡顿发热,超帧技术焕发中重载游戏动力

近几年,中国手游市场规模不断扩大,开发者通过在画面、玩法等方面的持续创新和打磨,推出更加精品化的产品。然而愈发精美的画质和复杂的玩法,也给硬件带来超高的负载,导致玩家在游戏过程中,频繁出现掉帧卡顿、发烫、续航差等体验降低的现象。HarmonyOS SDK 图形加速服务(…

ArchiMate 3 学习

目录ArchiMate 3 学习什么是ArchiMateArchiMate 3.1 规范关系动机元素策略元素业务层应用层技术层物理元素实施和迁移元素复合元素 ArchiMate 3 学习 ArchiMate 3 中文版 什么是ArchiMate ArchiMate 是 The Open Group 为企业架构提供的开放和独立的建模语言,由不同的工具供应…

如何找到并快速上手一个开源项目

以前有写过两篇文章来简单聊过如何做开源的事情,最近我自己组了一个社区里面也有不少朋友对开源感兴趣,于是我便根据自己的经验系统的梳理了一些关于开源的事情。新手如何快速参与开源项目 手把手教你为开源项目贡献代码有兴趣的可以先看看之前这两篇。🔎如何找到自己感兴趣…