SpringBoot 自定义MessageConvert
2024-10-18 00:58:32
- 创建一个MessageConvert类,实现HttpMessageConvert接口
- 简单实现,只完成写功能。其他默认false
package com.boot.converter; import com.boot.pojo.Person;
import org.springframework.http.HttpInputMessage;
import org.springframework.http.HttpOutputMessage;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.http.converter.HttpMessageNotWritableException; import java.io.IOException;
import java.io.OutputStream;
import java.util.List; /**
* @Author 36140
* @Date 2022/2/17 20:35
* @Version 1.0
*/
public class MyMesConverter implements HttpMessageConverter<Person> {
@Override
public List<MediaType> getSupportedMediaTypes(Class<?> clazz) {
return HttpMessageConverter.super.getSupportedMediaTypes(clazz);
} @Override
public boolean canRead(Class<?> clazz, MediaType mediaType) {
return false;
} @Override
public boolean canWrite(Class<?> clazz, MediaType mediaType) {
return clazz.isAssignableFrom(Person.class);
} @Override
public List<MediaType> getSupportedMediaTypes() {
return MediaType.parseMediaTypes("application/x-z");
} @Override
public Person read(Class<? extends Person> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException {
return null;
} @Override
public void write(Person person, MediaType contentType, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException {
String str = person.getUname()+";"+person.getAge()+";"+person.getPet();
OutputStream body = outputMessage.getBody();
body.write(str.getBytes());
}
}
- 简单实现,只完成写功能。其他默认false
3.在自定义配置类中添加 自定义的MessageConvert
@Bean
public WebMvcConfigurer webMvcConfigurer(){
return new WebMvcConfigurer() {
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(new MyMesConverter());
}
};
}
最新文章
- mysql 主主复制搭建用的命令
- ORACLE 连接SQLSERVER 数据库备忘
- Android下的数据储存方式
- Quartz 第三课 More About Jobs &; JobDetails(官方文档翻译)
- 因程序问题引起的服务器CPU负荷一直保持在90%以上
- Java对存储过程的调用方法 --转载
- Test 2.14
- GitHub学习笔记
- 拆除vs发展c++程序开发过程中产生的.ipch和.sdf文件的方法
- mac版Tomcat安装
- lombok系列(一)
- myls
- C语言的AT指令
- 【转】Linux下gcc生成和使用静态库和动态库详解
- 周强 201771010141《面向对象程序设计(java)》第四周学习总结
- 洛谷 P1546 最短网络 Agri-Net
- TCMalloc小记(转)
- 使用jQuery的$.ajax()向MVC控制器Post数据
- 在ASP.NET MVC中使用Knockout实践04,控制View Model的json格式内容
- pool创建多进程
热门文章
- Solon 1.6.18 发布,轻量级应用开发框架
- gin框架中全局跨域请求处理设置
- gin中XML/JSON/YAML/ProtoBuf 渲染
- 【程序5】输入三个整数x,y,z,请把这三个数由小到大输出
- linux文件创建删除与基础命令使用
- macOS Monterey 12.12.2 (21D49) 正式版 ISO、IPSW、PKG 下载
- C语言system函数
- js读取txt文件并下载
- Ubuntu安装 php + apache + mysql
- Jquery--1--选择器分类