SpringMvc根据返回值类型不同处理响应的方法

 更新时间:2023年09月16日 09:42:55   作者:菜到极致就是渣  
这篇文章主要介绍了SpringMvc根据返回值类型不同处理响应,我们可以通过控制器方法的返回值设置跳转的视图,控制器支持如void,String,ModelAndView类型,需要的朋友可以参考下

一、介绍

我们可以通过控制器方法的返回值设置跳转的视图。控制器支持如void,String,ModelAndView类型。

 二、返回值为void

返回值是void会跳转到名字是前缀(也就是你前面编写的视图解析器中的)+方法路径名+后缀的jsp页面        

(1)控制层方法

@RequestMapping("/test")
    public void t1(){
        System.out.println("hello!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
    }

路径是test,方法执行完毕以后会跳转到test.jsp页面中(前提是配置好了视图解析器,不然可能会报错)

三、返回值为String

(1)控制层

此时跳转到的的是前缀+返回值+后缀的jsp页面。

 @RequestMapping("/c2/h1")
    public String t2(){
        System.out.println("90");
        return "test";
    }

四、返回值为ModelAndView

该对象是SpringMvc提供的对象,它可以向request域设置数据并指定跳转的页面。该对象包含Model对象和View对象。

Model:向request域中设置数据。

View:指定跳转的页面

(1)控制层方法

@RequestMapping("/c2/h1")
    public ModelAndView t3(){
        //创建ModelAndView对象
        ModelAndView modelAndView=new ModelAndView();
        //获取Model对象,本质上是一个Map
        Map<String,Object> model=modelAndView.getModel();
        //使用Model对象向request域设置数据
        model.put("name","大大大大大牛");
        //使用View对象设置跳转的路径为/test.jsp
        modelAndView.setViewName("test");
        return modelAndView;
    }

(2)jsp页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<h1>request=${requestScope.name}</h1>
</body>
</html>

这里的${requestScope.name}是el表达式写法,所以在web.xml中要添加支持el表达式

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
               http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
     version="3.1">
</web-app>

到此这篇关于SpringMvc根据返回值类型不同处理响应的文章就介绍到这了,更多相关SpringMvc返回值类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入剖析理解AsyncGetCallTrace源码底层原理

    深入剖析理解AsyncGetCallTrace源码底层原理

    这篇文章主要为大家介绍了AsyncGetCallTrace源码的深层原理,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-02-02
  • 10分钟带你理解Java中的弱引用

    10分钟带你理解Java中的弱引用

    这篇文章将带大家快速理解Java中弱引用,文章介绍的很详细,对大家学习Java很有帮助哦,有需要的可以参考借鉴。
    2016-08-08
  • java多线程并发中使用Lockers类将多线程共享资源锁定

    java多线程并发中使用Lockers类将多线程共享资源锁定

    Lockers在多线程编程里面一个重要的概念是锁定,如果一个资源是多个线程共享的,为了保证数据的完整性,在进行事务性操作时需要将共享资源锁定,这样可以保证在做事务性操作时只有一个线程能对资源进行操作,下面看一个示例
    2014-01-01
  • Struts2实现对action请求对象的拦截操作方法

    Struts2实现对action请求对象的拦截操作方法

    这篇文章主要介绍了Struts2实现对action请求对象的拦截操作方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-11-11
  • Spring-Bean创建对象的步骤方式详解

    Spring-Bean创建对象的步骤方式详解

    在本篇文章里小编给大家分享的是关于Spring-Bean创建对象的步骤方式详解内容,有兴趣的朋友们跟着学习下。
    2020-02-02
  • Spring JPA配置文件Eclipse报错如何解决

    Spring JPA配置文件Eclipse报错如何解决

    这篇文章主要介绍了Spring JPA配置文件Eclipse报错如何解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Java中批处理框架spring batch详细介绍

    Java中批处理框架spring batch详细介绍

    这篇文章主要介绍了Java中批处理框架spring batch详细介绍,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • EasyCode插件使用详解(推荐)

    EasyCode插件使用详解(推荐)

    EasyCode是idea的一个插件,这个插件功能很强大,今天通过本文给大家分享EasyCode插件使用详解,需要的朋友可以参考下
    2020-09-09
  • 解决mapper接口无法映射mapper.xml的问题

    解决mapper接口无法映射mapper.xml的问题

    这篇文章主要介绍了解决mapper接口无法映射mapper.xml的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • SpringBoot登录判断过程代码实例

    SpringBoot登录判断过程代码实例

    这篇文章主要介绍了SpringBoot登录判断代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论