【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状态码(业务状态码会在专门的业务类进行设置)。

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

相关推荐
霸道流氓气质5 分钟前
智能表单生成器:结构化输出契约、JSON Schema 驱动渲染与 EAV/JSONB 混合存储的 Vue3 + Spring AI 生产级实战
人工智能·spring·json
java_nnnn1 小时前
spring web mvc图书管理小案例
前端·spring·mvc
lingyubb12 小时前
配音工具怎么选?从 TTS 合成链路看 6 个可量化参数
状态模式
步行cgn13 小时前
StringHttpMessageConverter 详解:Spring MVC 中字符串读写的默认转换器
java·spring·mvc
步行cgn15 小时前
@ResponseBody 详解:Spring MVC 中把返回值直接写入响应体
java·spring·mvc
萧瑟余晖18 小时前
Spring Data综合实战与调优详解
java·后端·spring
郭小李21 小时前
spring 的 @CookieValue 注解 用法
java·后端·spring
屈冠成1 天前
ShopXO商城系统测试报告
开发语言·spring·maven·lua
w_t_y_y1 天前
JWT(5)JWT+spring security
java·后端·spring
会编程的吕洞宾1 天前
Spring Boot 镜像瘦身实战:从 450MB 瘦到 180MB
java·后端·spring