当前位置: 首页 > news >正文

解决:springmvc工程 响应时,将实体类对象 转换成json格式数据

问题:一直无法将user对象转成json格式

按理来说,我在类上使用@RestController注解,就可以实现将实体类对象写入响应体中,并作为json格式传递到客户端,但现实是没有生效,并且出现404,406,500等错误!


解决办法:

一 ,添加json格式依赖

<!-- Jackson --><!-- Jackson核心库 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.13.0</version></dependency><!-- Jackson数据绑定库 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.13.4.2</version></dependency>

二, springmvc 消息转成器 配置类

package config;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import java.util.List;
@Configuration
public class WebMvcConfigurerConfig implements WebMvcConfigurer {@Overridepublic void extendMessageConverters(List<HttpMessageConverter<?>> converters) {//你可以使用ObjectMapper将Java对象序列化为JSON字符串或将JSON字符串反序列化为Java对象。MappingJackson2HttpMessageConverter jsonConverter = new MappingJackson2HttpMessageConverter();/*设置ObjectMapper,用于序列化你可以使用ObjectMapper将Java对象序列化为JSON字符串或将JSON字符串反序列化为Java对象。*/ObjectMapper objectMapper = new ObjectMapper();//用于配置对象映射器(ObjectMapper)的设置,目的是为了使序列化后的JSON输出更加易读。objectMapper.enable(SerializationFeature.INDENT_OUTPUT);// 设置ObjectMapper,用于反序列化jsonConverter.setObjectMapper(objectMapper);// 添加到转换器列表中converters.add(0, jsonConverter); // 可以添加到合适位置,比如开头}}

三,在springmvc配置类中加载config所在包

@EnableWebMvc:开启json依赖 功能

@ComponentScan({"controller", "config"}):扫描controller,config所在包

@Configuration:作为配置类


package config;import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;@Configuration
@ComponentScan({"controller", "config"})
@EnableWebMvc
public class SpringmvcConfig {
}

四, 在RequestMapping注解 要求user对象使用json格式

//传递对象@RequestMapping(value = "/user2", produces = "application/json")public User printUser1(User user) {System.out.println(user);return user;}

相关文章:

  • Windows申请苹果开发者测试证书Uniapp使用
  • 二分小专题
  • [特殊字符] 分布式定时任务调度实战:XXL-JOB工作原理与路由策略详解
  • WGAN+U-Net架构实现图像修复
  • U盘能识别但无法写入数据的原因
  • 数据结构-图
  • 美团获全国首张低空物流全境覆盖运营合格证,其第四代无人机具备全域环境适应能力
  • 技术服务业-首套运营商网络路由5G SA测试专网在深光搭建完成并对外提供服务
  • JavaScript 的“积木”:函数入门与实践
  • 关于Spring Boot构建项目的相关知识
  • 7.9 Python+Click实战:5步打造高效的GitHub监控CLI工具
  • 机器学习(9)——随机森林
  • 使用 VMware 安装一台 Linux 系统之Ubuntu
  • JAVA---面向对象(上)
  • CSGO饰品盲盒系统源码搭建与仿站开发全解析
  • Sharding-JDBC 系列专题 - 第八篇:数据治理与高级功能
  • 【Python爬虫基础篇】--4.Selenium入门详细教程
  • java—14 ZooKeeper
  • Springboot3+ JDK21 升级踩坑指南
  • 实现营销投放全流程自动化 超级汇川推出信息流智能投放产品“AI智投“
  • 美联储官员:若特朗普高额关税致失业率飙升,将支持降息
  • 央行上海总部:受益于过境免签政策,上海市外卡刷卡支付交易量稳步增长
  • 央行上海总部:上海个人住房贷款需求回升,增速连续半年回升
  • 浦江观察|3.6亿元消费券,为上海餐饮业带来了什么?
  • 上海一小学百名学生齐聚图书馆:纸质书的浪漫AI无法取代
  • 打造“旧书朋友圈”,“淘书乐”为旧书找“新朋友”