学习笔记——SpringMVC消息转换器概述;使用消息转换器处理请求报文;使用消息转换器处理响应报文;使用消息转换器处理Json格式数据

Posted isDaHua

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习笔记——SpringMVC消息转换器概述;使用消息转换器处理请求报文;使用消息转换器处理响应报文;使用消息转换器处理Json格式数据相关的知识,希望对你有一定的参考价值。

2023-01-20

一、SpringMVC消息转换器概述

1、HttpMessageConverter<T>

消息转换器作用:

(1)将java对象与请求报文及响应报文进行相互转化

(2)使用HttpMessageConverter<T>将请求信息转化并绑定到处理方法的入参中或将响应结果转为对应类型的响应信息,Spring提供了两种途径:

①使用@RequestBody/@@ResponseBody对处理方式进行标注。

②使用HttpEntity<T>/ResponseEntity<T>作为处理方法的入参或返回值。

二、使用消息转换器处理请求报文

1、使用@RequestBody获取请求体

(1)语法

final static String SUCCESS = "success";
    
    @RequestMapping("/testRequestBody")
    public String testRequestBody(@RequestBody String reqBody)
        System.out.println("reqBody = " + reqBody);
        return SUCCESS;
    

(2)注:使用@RequestBody必须以POST方式提交,不能使用GET方式(GET提交方式,没有请求体)

2、使用HttpEntity<T>对象,获取请求头及请求体

(1)语法:

@RequestMapping("/testHttpEntity")
    public String testHttpEntity(HttpEntity<String> httpEntity)
        //获取请求头
        System.out.println("httpEntity.getHeaders() = " + httpEntity.getHeaders());
        //获取内容
        System.out.println("httpEntity.getBody() = " + httpEntity.getBody());
        return SUCCESS;
    

(2)可以获取请求头及请求体

三、使用消息转换器处理响应报文

1、@ResponseBody

(1)位置:

①书写在class类上面(当前类所有方法,均返回文本,不调整页面)

②书写在方法上面

(2)语法

@RequestMapping("/testResponseBody")
    @ResponseBody
    public String testResponseBody()
        System.out.println("testResponseBody !!!");
        return "hello";
    

四、使用消息转换器处理Json格式数据

1、导入jar包

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.12.3</version>
</dependency>

2、装配MappingJackson2HttpMessageConverter消息转换器

必须配置mvc:annotation-drive标签才能装配Jackson的转换器

3、在需要转换json数据的方法上,添加@ResponseBody

4、实例代码:

@RequestMapping("/testJSON")
    @ResponseBody
    public Employee testJSON()
        System.out.println("testJSON");
        Employee employee = new Employee(1001,"zhangsan","123@163.com",1);
        return employee;
    

 

以上是关于学习笔记——SpringMVC消息转换器概述;使用消息转换器处理请求报文;使用消息转换器处理响应报文;使用消息转换器处理Json格式数据的主要内容,如果未能解决你的问题,请参考以下文章

springmvc学习笔记(18)-json数据交互

springmvc学习笔记(18)-json数据交互

学习笔记——@PathVariable注解基本使用;@PathVariable注解属性;REST风格CRUD概述;实现PUT&DELETE提交方法步骤;SpringMVC处理请求数据请求头处理

B站狂神说Java---记录SpringMVC学习笔记

SpringMVC学习笔记

SpringMVC学习笔记