首页 > 其他分享 >springboot异常解决

springboot异常解决

时间:2024-07-01 11:41:39浏览次数:15  
标签:RestController springboot 视图 test Controller 解决 异常 public RequestMapping

问题解决

问题解释

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

问题分析

原先的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
可成功运行

标签:RestController,springboot,视图,test,Controller,解决,异常,public,RequestMapping
From: https://www.cnblogs.com/Sun-Wind/p/18277744

相关文章

  • SpringBoot自定义注解实现接口幂等
    一、前言接口幂等就是对一个接口执行重复的多次请求,与一次请求所产生的结果是相同的。对数据库的查询和删除是天然幂等的,更新操作在大多数场景下也是天然幂等。插入大多数情况下都是非幂等的,除非利用数据库的唯一索引来保证数据不会重复保存。二、为什么需要幂等1.超时重试......
  • protobufjs解析proto消息出错RangeError: index out of range: 2499 + 10 > 2499解决办
    使用websocket通讯传输protobuf消息的时候,decode的时候出错了:RangeError:indexoutofrange:2499+10>2499Error:invalidwiretype4atoffset1986出现这种错误的时候,99%是因为proto里面的消息类型和服务端发送的消息类型不一致导致的。解决这个问题的办法有......
  • 解决.NET Core Ajax请求后台传送参数过大请求失败问题
    原文链接:https://www.cnblogs.com/xiongze520/p/14500156.html今天在项目上遇到一个坑,在.NetCore中通过ajax向mvc的controller传递对象时,控制器(controller)的方法一直没有进去,百思不得其解,后面把传递的参数打印出来发现传递的参数比较大,有2.4M的数据,如下图:后面跟踪项目发现we......
  • 创建springboot项目的具体步骤
    点击newProject点击SpringInitializer创建springboot项目将ServerURL改为start.aliyun.com这样就可以选择java11的版本Location选择文件存放路径Language选择编程语言Type选择项目管理的类型JDK选择项目的JDKJava选择项目的java版本Packaging选择项目的打包......
  • 使用.Net6中的System.Text.Json遇到几个常见问题及解决方案
    原文链接:https://blog.csdn.net/zls365365/article/details/124162096前言以前.NetCore是不内置JSON库的,所以大家都用Newtonsoft的JSON库,而且也确实挺好用的,不过既然官方出了标准库,那更方便更值得我们多用用,至少不用每次都nuget安装Newtonsoft.Json库了。字符编码问题默认的S......
  • Win10需要使用新应用以打开此windowsdefender链接怎么解决?
    1、以管理员身份打开“WindowsPowerShell”。 2、以管理员身份在Powershell中依次运行如下命令即可解决。1.$BasePath=Get-Content.appx.list(报错不要管)2.$BasePath|%{$Path=$($_).Trim()Add-AppxPackage-Register-DisableDevelopmentMode“$PathAppXManifest.xml......
  • python异常、模块与包
    目录了解异常异常的捕获方法python模块python包安装第三方包了解异常什么是异常当检测到一个错误时,python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的“异常”,也就是我们常说的BUGbug单词的诞生早期计算机采用大量继电器工作,马克二型计算机就是......
  • (免费领源码)java#Springboot#mysql物品代拿系统32500-计算机毕业设计项目选题推荐
    摘 要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用Java技术开发,Sp......
  • 解决卡顿发热,超帧技术焕发中重载游戏动力
    近几年,中国手游市场规模不断扩大,开发者通过在画面、玩法等方面的持续创新和打磨,推出更加精品化的产品。然而愈发精美的画质和复杂的玩法,也给硬件带来超高的负载,导致玩家在游戏过程中,频繁出现掉帧卡顿、发烫、续航差等体验降低的现象。HarmonyOSSDK图形加速服务(GraphicsAccele......
  • 前端文件导出问题及解决方案深度解析
    引言在前端开发中,文件导出功能是提升用户体验的关键点之一。然而,实现这一功能时,我们可能会遇到一些棘手的问题。本文将深入探讨两个常见的前端文件导出问题,并提供详细的解决方案。问题一:数据流形式导出文件的实现与优化问题背景在Vue框架中使用axios进行数据请求时,如果接口......