springMVC用ModelAndView传参并控制页面跳转

通过ModelAndView传参,结果在浏览器上显示404错误,一下是错误信息,跳转目标页面名为success.html
后端相关代码

img

前端相关代码

img

img

报错信息

img

代码没有报错,就是不知道哪里出了问题,希望能帮忙解决一下

看看报错这个页面地址栏的内容

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以看下这个问题的回答https://ask.csdn.net/questions/195419
  • 这篇博客也不错, 你可以看下SpringMVC中Model与ModelAndView的使用
  • 除此之外, 这篇博客: SpringMVC框架 -- ModelAndView的用法中的 三、ModelAndView使用示例 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    Spring搭建的后台一般分为分发功能的Controller层,逻辑判断的Service层,数据库交互的Dao层。ModelAndView 一般在Controller层作为结果类型返回,其内部的view部分指定返回的页面,model指定返回的参数,以下是示例代码:

     //指定访问此接口方式和地址
    @RequestMapping(method=RequestMethod.GET ,value = "/getShareInfo")    
    public ModelAndView  getShareInfo(Integer liveBroadcastId,String language,Integer userId) {
    
    	//指定页面名称为share
    	ModelAndView mv = new ModelAndView();       
    	ResultTemplateModel<Object> liveModel = liveBroadcastService.getLiveById(liveBroadcastId, language, userId);
    	 //得到结果对象
    	LiveDetailInfoModel liveInfo = (LiveDetailInfoModel) liveModel.getData();    
    
    	//从结果对象中取出参数放入 ModelAndView 中
    	mv.addObject("replayName", liveInfo.getReplayName());    
    	mv.addObject("startPlayTime()", liveInfo.getStartPlayTime()); 
    	mv.addObject("address", liveInfo.getAddress()); 
    	mv.addObject("attentionState", liveInfo.getAttentionState());
    	mv.setViewName("share");
    	return mv;       
    }
    

    在springMVC.xml中的配置

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    	<!-- 给view返回的指定页面名称添加前后缀 -->
    	<property name="prefix" value="/WEB-INF/views/" />
    	<property name="suffix" value=".jsp" />
    </bean>
    

    指定的视图名称为share,在返回之前,InternalResourceViewResolver会加上前后缀,也就是找到/WEB-INF/views/share.jsp这个页面,然后将设置在ModelAndView中的参数拼入到share.jsp中,JSP页面中以 JSTL表达式来接收在ModelAndVIew中设置的参数,这个过程也就是ModelAndView的渲染过程。


    参考:

    Model、ModelMap和ModelAndView的使用详解
  • 您还可以看一下 尚硅谷IT教育老师的JavaEE框架课程中的 SpringMVC处理模型数据之ModelAndView小节, 巩固相关知识点

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^