【Spring MVC篇】返回响应

个人主页:兜里有颗棉花糖

欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创

收录于专栏【Spring MVC

本专栏旨在分享学习Spring MVC的一点学习心得,欢迎大家在评论区交流讨论💌

目录

一、返回静态页面

前端代码:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>首页</title>
</head>
<body>
    <h1>我是一个栗子</h1>
</body>
</html>

后端代码:

java 复制代码
@RequestMapping("/return")
@Controller
public class ReturnController {
    @RequestMapping("/index")
    public String returnIndex() {
        return "/index.html";
    }
}

运行结果:


注意:使用Controller注解,因为返回的是一个html页面。

二、返回数据(@ResponseBody)

代码如下:

java 复制代码
@ResponseBody
@RequestMapping("/data")
public String data() {
    return "这是视图需要的数据";
}

结果如下:

注意:使用ResponseBody注解

三、返回html片段

后端的返回数据中如果有html代码片段的话依然会被浏览器进行解析:

代码如下:

java 复制代码
@ResponseBody
@RequestMapping("/returnHtml")
public String returnHtml() {
    return "<h1>返回html片段</h1>";
}

结果如下:

如果想让返回的数据就是原始的html代码的话,需要用到前端中的转义字符对尖括号进行转义。

抓包结果:

四、返回JSON

代码如下:

java 复制代码
@ResponseBody
@RequestMapping("/returnJson")
public Person returnJson() {
    Person person = new Person();
    person.setName("lisi");
    person.setAge(18);
    person.setId(1);
    return person;
}

运行结果如下:

抓包结果:

五、设置状态码

代码如下:

java 复制代码
@ResponseBody
@RequestMapping("/setStatus")
public String setStatus(HttpServletResponse response) {
    response.setStatus(401);// 一般表示没有登录
    return "状态码设置成功";
}

结果如下:

抓包结果如下:

状态码的设置与页面的展示是没有关系的,页面该展示什么依然会展示什么。上面设置的是http状态码(业务状态码会在专门的业务类进行设置)。

好了,以上就是本文的全部内容了。希望各位友友可以一键三连哈!!!

相关推荐
ZHE|张恒27 分钟前
Spring Bean 生命周期
java·spring
烤麻辣烫4 小时前
黑马程序员大事件后端概览(表现效果升级版)
java·开发语言·学习·spring·intellij-idea
q***96584 小时前
Spring总结(上)
java·spring·rpc
高级程序源4 小时前
springboot社区医疗中心预约挂号平台app-计算机毕业设计源码16750
java·vue.js·spring boot·mysql·spring·maven·mybatis
i***58675 小时前
springcloud springboot nacos版本对应
spring boot·spring·spring cloud
烤麻辣烫5 小时前
黑马程序员苍穹外卖(新手)DAY6
java·开发语言·学习·spring·intellij-idea
s***38565 小时前
SpringBoot中如何手动开启事务
java·spring boot·spring
q***61416 小时前
Spring中Aware的用法以及实现
java·数据库·spring
q***14649 小时前
SpringMVC的工作流程
状态模式
7***n7511 小时前
前端设计模式详解
前端·设计模式·状态模式