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

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

相关推荐
小钊(求职中)4 小时前
Java开发实习面试笔试题(含答案)
java·开发语言·spring boot·spring·面试·tomcat·maven
拾忆,想起8 小时前
Spring 和 Spring MVC 的关系是什么?
java·spring boot·spring·spring cloud·微服务
best_virtuoso9 小时前
Mybatis MyBatis框架的缓存 一级缓存
spring·缓存·mybatis
逸狼12 小时前
【JavaEE进阶】Spring MVC(2)
spring·java-ee·mvc
m0_7482338813 小时前
使用 Logback 的最佳实践:`logback.xml` 与 `logback-spring.xml` 的区别与用法
xml·spring·logback
快乐就好ya13 小时前
Dfs分布式文件存储
java·spring boot·分布式·后端·spring·spring cloud
hong_zc15 小时前
Spring IoC
java·后端·spring
zhyhgx16 小时前
【Spring】详解Spring IOC&DI
java·spring boot·后端·spring·java-ee·intellij-idea
指尖下的技术17 小时前
SpringCloud面试题----为什么会产生Eureka的自我保护, 如何关闭自我保护机制
spring·spring cloud·eureka
web135085886351 天前
【Spring Boot】Spring AOP动态代理,以及静态代理
spring boot·后端·spring