SpringMVC处理ajax请求之@ResponseBody注解,将后端数据响应到浏览器

news2024/11/28 16:34:13

上一篇文章讲到SpringMVC处理ajax请求用到的@RequestBody注解SpringMVC处理ajax请求(@RequestBody注解),ajax向后端传递的数据格式详解-CSDN博客,这个注解帮我们解决了如何将客户端的数据通过json数据传递到服务器,简单说此功能就是我们在一个网站上想添加某个信息到服务器的数据库也就是”增删改查“中的增,而这篇文章就是”查“!我们使用SpringMVC提供的@ResponseBody注解,将控制器中方法的返回值(”查到的数据“)拿到前端显示出来,本篇文章用到的前端模板引擎技术为Thymeleaf。

@ResponseBody用于标识一个控制器方法,可以将该方法的返回值直接作为响应报文的响应体响应到浏览器。

具体功能实现:例,点击一个按钮,显示一个user对象包含的信息。是从后端传json数据到前端显示

本次实验我们需要实现的功能是将控制器封装好的User对象封装到List集合响应到浏览器。

User实体类:

@ResponseBody注解

@RequestBody可以获取请求体信息,使用@RequestBody注解标识控制器方法的形参,当前请求的请求体就会为当前注解所标识的形参赋值。

1、定义一个控制器方法

通过请求实现对网页的访问。SpringMVC实现对网页的访问,在请求控制器中创建处理请求的方法-CSDN博客

@RequestMapping:处理请求和控制器方法之间的映射关系实现对网页的访问

使用@ResponseBody注解标识控制器方法,在方法中,将需要转换为json字符串并响应到浏览器的java对象作为控制器方法的返回值,此时SpringMVC就可以将此对象直接转换为json字符串并响应到浏览器。

@Controller
public class ResponseController {
    //响应浏览器list集合
    @RequestMapping("/test/ResponseBody/json")
    @ResponseBody
    public List<User> testResponseBody(){
        User user1 = new User(1001,"admin1","123456",23,"男","2023@qq.com");
        User user2 = new User(1002,"admin2","123456",23,"男","2023@qq.com");
        User user3 = new User(1003,"admin3","123456",23,"男","2023@qq.com");
        List<User> list = Arrays.asList(user1, user2, user3);
        return list;
    }
}

服务器处理ajax请求之后,大多数情况都需要向浏览器响应一个java对象,此时必须将java对象转换为json字符串才可以响应到浏览器,之前我们使用操作json数据的jar包gson或jackson将java对象转换为json字符串。在SpringMVC中,我们可以直接使用@ResponseBody注解实现此功能。

2、导入jackson依赖

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>2.12.1</version>
</dependency>

SpringMVC的配置文件中设置开启mvc的注解驱动

<!--开启mvc的注解驱动-->
<mvc:annotation-driven />

3、网页获取值

点击按钮,将值作为一个表单显示到浏览器

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <base th:href="@{/}">
    <script th:src="@{/static/js/jquery-1.7.2.js}"></script>
</head>
<body>
<input type="button" value="测试@RespondBody响应浏览器json格式的数据" onclick="testRequestBody()"><br>
<table border="1" id="tid">

</table>
</body>
</html>
<script>
    function testRequestBody(){
        $.post("test/ResponseBody/json","",function (data){
            for (var i = 0; i < data.length; i++) {
                $("#tid").append("<tr><td>"+data[i].id+"</td><td>"+data[i].username+"</td></tr>")
            }

        })
    }
</script>

最终结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1425392.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于ARM的餐厅点餐系统的设计与实现

基于ARM的餐厅点餐系统的设计与实现 系统简介 本设计主要将 STM32F103ZET6 芯片作为无线订购系统主要控制芯片&#xff0c;分为顾客终端和厨师终端。顾客通过 LCD 显示屏浏览菜单并点击触摸屏选择自己所需菜单&#xff0c;并经过有线连接到 PC 端上位机&#xff0c;将订餐信息…

人工智能基础-Numpy矩阵运算-聚合操作

加、减、乘、除、整除 幂、取余、倒数、绝对值 三角函数 e的x次方、3的x次方、logx、log2为底、log10为底 矩阵运算 加、减、乘&#xff08;对应数相乘&#xff09;、矩阵相乘运算、转至 向量和矩阵的运算 加法 对应相加 改变维度后相加 乘法 矩阵的逆 聚合操作 …

单元测试实践

一、写在开始写单元测试前 1.1 背景 我们开发都知道单元测试的重要性&#xff0c;而且每个开发都有要写单元测试的意识单元测试和代码编写结构息息相关&#xff0c;业界常用专业名词TDD&#xff08;测试驱动开发&#xff09;&#xff0c;言外之意我们开始编写代码的时候就已经…

如何使用Cloudreve搭建私有云盘并发布公网访问无需购买域名服务器

文章目录 1、前言2、本地网站搭建2.1 环境使用2.2 支持组件选择2.3 网页安装2.4 测试和使用2.5 问题解决 3、本地网页发布3.1 cpolar云端设置3.2 cpolar本地设置 4、公网访问测试5、结语 1、前言 自云存储概念兴起已经有段时间了&#xff0c;各互联网大厂也纷纷加入战局&#…

自学Java的第54、55、56、57天

多线程 创建方式一 写法 注意&#xff1a; 创建方法二 写法 写法 简化&#xff1a; 创建方法三 写法 Thread的常用方法 写法 线程安全 用程序模拟 解决方法&#xff1a;线程同步 方法一 同步代码块 写法 方法二 同步方法 写法 方法三 Lock锁 写法 线程通信&#xff08;了解&…

壹[1],Xamarin开发环境配置

1&#xff0c;环境 VS2022 注&#xff1a; 1&#xff0c;本来计划使用AndroidStudio&#xff0c;但是也是一堆莫名的配置让人搞得很神伤&#xff0c;还是回归C#。 2&#xff0c;MAUI操作类似&#xff0c;但是很多错误解来解去&#xff0c;且调试起来很卡。 3&#xff0c;最…

企业计算机服务器中了mkp勒索病毒怎么办,mkp勒索病毒解密流程

网络是一把双刃剑&#xff0c;随着网络技术的不断发展与应用&#xff0c;企业的生产效率大大提升&#xff0c;企业的数据安全关乎着企业的发展&#xff0c;保护好企业的数据直观重要&#xff0c;近期&#xff0c;云天数据恢复中心接到很多企业的求助&#xff0c;企业的计算机服…

Mistral-7B本地运行【Ollama】

Mistral AI 目前提供两种类型的大型语言模型访问方式&#xff1a; 提供按使用量付费访问最新模型的 API&#xff0c;开源模型可在 Apache 2.0 许可证下使用&#xff0c;可在 Hugging Face 上或直接从文档中获取。 在本指南中&#xff0c;我们概述了 Mistral 7B LLM 以及如何提…

多核CPU 缓存一致性(总线嗅探、MESI协议)

内存与CPU缓存的写一致性 CPU Cache 通常分为三级缓存&#xff1a;L1 Cache、L2 Cache、L3 Cache&#xff0c;级别越低的离 CPU 核心越近&#xff0c;访问速度也快&#xff0c;但是存储容量相对就会越小。其中&#xff0c;在多核心的 CPU 里&#xff0c;每个核心都有各自的 L1/…

孪生卷积神经网络(Siamese Convolutional Neural Network)的设计思路

孪生卷积神经网络&#xff08;Siamese Convolutional Neural Network&#xff09;是一种特殊类型的卷积神经网络&#xff0c;主要用于处理需要成对比较的数据&#xff0c;例如判断两个输入是否相似。 以下是孪生卷积神经网络的基本结构&#xff1a; 输入层&#xff1a;这一层…

python IDLE无法打开,提示错误#10051 向一个无法连接的网络尝试了一个套接字操作。

系统&#xff1a;Windows 10 软件&#xff1a;python 3.9.13 打开软件提示错误#10051 向一个无法连接的网络尝试了一个套接字操作。软件自动闪退。 解决方法&#xff1a; 可能是系统自动更新的问题或其他问题&#xff0c;导致防火墙阻止python连接本地端口。在防火墙上建立通…

win10使用IE访问某些特殊地址的极简办法(成功有效)

前言&#xff1a;看了好多其它办法&#xff0c;都没什么作用~ 1、打开win10默认的Edge浏览器的设置&#xff1a;点击右上角的三个点&#xff0c;然后里面有个设置选项 2、找到默认浏览器选项 3、添加你要访问的地址 5、在Edge中去访问你要访问的地址&#xff0c;就好了

非接触式激光测厚仪 单点/三点/多点在线测厚设备

关键字: 非接触式激光测厚仪, 板材厚度检测,激光测厚仪,单点测厚仪,三点测厚仪,多点测厚仪,扫描式激光测厚仪, 厚度是各类板材品质必检的尺寸之一 在实际测量中&#xff0c;板材厚度的测量&#xff0c;尤其是宽板中间位置的厚度尺寸测量&#xff0c;是一项较为困难的工作。为此…

揭秘二进制之谜:为何-128与+128的二进制表示相同,都是1000 0000?

8位有符号整数-128的二进制码是1000 0000&#xff0c;而128的二进制码也是1000 0000&#xff0c;你是不是觉得很奇怪&#xff1f; 下面就让我来解释一下。 从-128到127的跨越 8位二进制数能够表示2^8共256个不同的值&#xff0c;从0000 0000到1111 1111。在8位有符号整数的世…

【2024】大三寒假再回首:缺乏自我意识是毒药,反思和回顾是解药

2024年初&#xff0c;学习状态回顾 开稿时间&#xff1a;2024-1-23 归家百里去&#xff0c;飘雪送客迟。 搁笔日又久&#xff0c;一顾迷惘时。 我们饱含着过去的习惯&#xff0c;缺乏自我意识是毒药&#xff0c;反思和回顾是解药。 文章目录 2024年初&#xff0c;学习状态回顾一…

带大家详细了解msvcr120.dll丢失的原因,msvcr120.dll丢失怎样修复的方法

在使用电脑和运行应用程序时&#xff0c;我们经常会遇到与动态链接库&#xff08;Dynamic Link Library, DLL&#xff09;文件相关的错误。其中之一是 "msvcr120.dll 丢失" 的错误提示。今天我们就来详细的了解一下msvcr120.dll这个文件和分享msvcr120.dll丢失怎样修…

18- OpenCV:基于距离变换与分水岭的图像分割

目录 1、图像分割的含义 2、常见的图像分割方法 3、距离变换与分水岭介绍 4、相关API 5、代码演示 1、图像分割的含义 图像分割是指将一幅图像划分为若干个具有独立语义的区域或对象的过程。其目标是通过对图像进行像素级别的分类&#xff0c;将图像中不同的区域或对象分离…

MySQL原理(四)索引(3)索引失效与索引区分度

一、索引失效&#xff1a; 首先未使用索引列作为查询条件索引是肯定会生效的&#xff0c;还有其他的情况&#xff0c;索引列做为了查询条件也失效了&#xff1a; ALTER TABLE staffs ADD INDEX idx_staffs_nameAgePos(NAME, age, pos); 1、select 语句、order by语句&#xf…

TensorFlow2实战-系列教程5:猫狗识别2------数据增强

&#x1f9e1;&#x1f49b;&#x1f49a;TensorFlow2实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Jupyter Notebook中进行 本篇文章配套的代码资源已经上传 猫狗识别1 数据增强 猫狗识别2------数据增强 猫狗识别3------迁移学习 1、猫狗识别任…

国家级专精特新“小巨人”第一至五批名单

国家级专精特新“小巨人”第一至五批名单 1、来源&#xff1a;工信部 2、样本量&#xff1a;1.29W第一批企业共248家&#xff0c;A股上市35家&#xff1b;第二批企业共1744家&#xff0c;A股上市157家&#xff1b;第三批企业共2930家&#xff0c;A股上市119家&#xff1b;第四…