SpringMVC中后端处理器方法的返回值

使用@Controller注解标识的后端处理器类中的方法,其返回值通常有四种情况

1. ModelAndView

若处理器方法处理完之后,需要跳转到其他页面并且需要传递一些数据,此时返回ModelAndView比较好。
例子:
在这里插入图片描述

2. String

当后端控制器方法返回类型为String时,代表返回的是视图的完整路径名(前提:不要在项目里配置视图解析器!!!)
例子:在这里插入图片描述
这种方式有个不好的地方就是如果后端有很多方法需要跳转很多jsp页面,那么都写相对路径很繁琐。于是MVC框架为了解决这个问题提供了视图解析器,视图解析器在MVC的配置文件中进行配置,一般格式如下
在这里插入图片描述
配置完视图解析器后,再返回String类型的路径时,就不需要写比较长的相对路径了,直接写视图名就可以了,像上面fun2.do的请求处理方法,就可以将返回值改为return "paramsResult"即可,框架会自动填充前缀和后缀

3. void(了解)

若处理器方法对请求处理后,无需跳转到其它任何资源,仅仅需要返回数据给请求,此时可以让处理器方法返回 void类型,使用response对象填充数据即可。例如,对于 AJAX 的异步请求的响应就可以使用这种方式
步骤:
因为现在基本上都是使用json数据传输前后端数据,所以先导入处理json的依赖,这里我使用Jackson依赖
在这里插入图片描述
方法具体是这样的
在这里插入图片描述
这种方式仅做了解即可,因为有下面的更好的方式替代了

4. Object

处理器方法也可以返回 Object 对象。这个 Object 可以是 Integer,String,自定义对象,Map,List 等。但返回的对象不是作为逻辑视图出现的,而是作为直接在页面显示的数据出现的。返回对象,需要使用@ResponseBody 注解,将转换后的 JSON 数据放入到响应体response中。
步骤:
1-导入Jackson依赖
由于返回 Object 数据,一般都是将数据转化为了 JSON 对象后传递给浏览器页面的。而这个由 Object 转换为 JSON,是由 Jackson 工具完成的。所以还是需要需要导入 Jackson 的相关 Jar 包。
2-声明注解驱动
在这里插入图片描述
3-处理器方法需要添加@ResponseBody注解,目的是让框架帮我们做object转json并存入response中这个工作
在这里插入图片描述
提醒下:若返回的值类型为String时,框架自带的消息转换器会将字符串以ISO-8859-1字符集编码返回,所以如果返回的值为字符串时需要在@RequestMapping注解中手动添加
produces = "text/plain;charset=utf-8"设置返回的字符串以UTF-8字符集编码

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值