SpringBoot处理JSON数据方法详解

前言

在Spring Boot的Web应用中 内置了JSON数据的解析功能,默认使用Jackson自动完成解析(不需要解析加载Jackson依赖包)当控制器返回一个Java对象或集合数据时 Spring Boot自动将其转换成JSON数据,使用起来很方便简洁。

Spring Boot处理JSON数据时,需要用到两个重要的JSON格式转换注解,分别是@RquestBody

@ResponseBody 他们的作用分别如下

@RequestBody:用于将请求体中的数据绑定到方法的形参中,该注解应用在方法的形参上

@ResponseBody:用于直接返回JSON对象 该注解应用在方法上

下面通过一个实例讲解Spring Boot处理JSON数据的过程,该实例针对返回实体对象,ArrayList集合,Map集合以及List

>集合分别处理

步骤如下

1、创建实体类

在应用的com.ch.ch5_2.model包中 创建实体类Preson 代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package com.ch.ch5_2.model;
public class Preson {
    private String pname;
    private String password;
    private Integer page;
    public String getPname() {
        return pname;
    }
    public void setPname(String pname) {
        this.pname = pname;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public Integer getPage() {
        return page;
    }
    public void setPage(Integer page) {
        this.page = page;
    }
}

2、创建视图页面

在src/main/resources/templates目录下 创建视图页面 input.html 并且引入jQuery框架 并使用它的ajax方法进行异步请求 部分代码如下(此处需要一些Java Web开发的知识 如有不明白的可以参考我之前的博客 进主页就有)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<title>Insert title here</title>
    function testJson() {
        //获取输入的值pname为id
        var pname = $("#pname").val();
        var password = $("#password").val();
        var page = $("#page").val();
        alert(password);
        $.ajax({
            //发送请求的URL字符串
            url : "testJson",
            //定义回调响应的数据格式为JSON字符串,该属性可以省略
            dataType : "json",
            //请求类型
            type : "post",
            //定义发送请求的数据格式为JSON字符串
            contentType : "application/json",
            //data表示发送的数据
            data : JSON.stringify({pname:pname,password:password,page:page}),
            //成功响应的结果
            success : function(data){
                if(data != null){
                    //返回一个Person对象
                    //alert("输入的用户名:" + data.pname + ",密码:" + data.password + ",年龄:" +  data.page);
                    //ArrayList对象
                    /**for(var i = 0; i < data.length; i++){
                        alert(data[i].pname);
                    }**/
                    //返回一个Map对象
                    //alert(data.pname);//pname为key
                    //返回一个List<Map>对象
                    for(var i = 0; i < data.length; i++){
                        alert(data[i].pname);
                    }
                }
            },
            //请求出错
            error:function(){
                alert("数据发送失败");
            }
        });
    }
 
hicon-pencil">
                             
                            
本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/code/java/6501.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部