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

java链式编程对象序列化问题

在使用 openfeign 进行服务之间数据传输时发现了一个问题,数据在下游正常处理,响应到调用端数据也读取到了,但是就是 jackson 转对象序列化时出了问题,异常如下

Failed to complete request: feign.codec.DecodeException: Type definition error: [simple type, class com.xxx.common.core.model.PaginationInfo]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.xxx.common.core.model.PaginationInfo` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)

原代码如下

import java.util.List;public class PaginationInfo {private Integer currentPages;private Integer total;private List records;private PaginationInfo(Builder builder) {setCurrentPages(builder.currentPages);setTotal(builder.total);setRecords(builder.records);}public static Builder builder() {return new Builder();}public Integer getCurrentPages() {return currentPages;}public void setCurrentPages(Integer currentPages) {this.currentPages = currentPages;}public Integer getTotal() {return total;}public void setTotal(Integer total) {this.total = total;}public List getRecords() {return records;}public void setRecords(List records) {this.records = records;}public static final class Builder {private Integer currentPages;private Integer total;private List records;private Builder() {}public Builder currentPages(Integer val) {currentPages = val;return this;}public Builder total(Integer val) {total = val;return this;}public Builder records(List val) {records = val;return this;}public PaginationInfo build() {return new PaginationInfo(this);}}
}

使用了链式编程进行赋值操作,按照上面的提示就是没有默认构造器,将private的构造器修改为public,添加一个默认构造器,效果如下

import java.util.List;public class PaginationInfo {private Integer currentPages;private Integer total;private List records;public PaginationInfo() {}public PaginationInfo(Builder builder) {setCurrentPages(builder.currentPages);setTotal(builder.total);setRecords(builder.records);}public static Builder builder() {return new Builder();}public Integer getCurrentPages() {return currentPages;}public void setCurrentPages(Integer currentPages) {this.currentPages = currentPages;}public Integer getTotal() {return total;}public void setTotal(Integer total) {this.total = total;}public List getRecords() {return records;}public void setRecords(List records) {this.records = records;}public static final class Builder {private Integer currentPages;private Integer total;private List records;private Builder() {}public Builder currentPages(Integer val) {currentPages = val;return this;}public Builder total(Integer val) {total = val;return this;}public Builder records(List val) {records = val;return this;}public PaginationInfo build() {return new PaginationInfo(this);}}
}

试了一下,运行正常。

相关文章:

java链式编程对象序列化问题

在使用 openfeign 进行服务之间数据传输时发现了一个问题,数据在下游正常处理,响应到调用端数据也读取到了,但是就是 jackson 转对象序列化时出了问题,异常如下 Failed to complete request: feign.codec.DecodeException: Type d…...

关于Redis(Redisson)超时问题的分析

概述 生产环境中流量高峰期会出现短时间的redis异常,主要报错如下: Redis server response timeoutRedisTimeoutException: Command execution timeout for command: (PING)Command still hasn’t been written into connection! 根据redisson官方所述…...

Redis 主从复制,哨兵,集群——(2)哨兵篇

目录 1. Redis 哨兵是什么? 2. Redis 哨兵有什么用? 2.1 主动监控 2.2 消息通知 2.3 故障转移 2.4 配置中心 3. Redis 哨兵数量配备要求 4. 哨兵配置文件详解 5. quorum 投票数详解 5.1 quorum 的含义 5.2 网络抖动导致主观下线 5.3 quorum …...

C++入门笔记分享

有道云笔记...

使用conda install一直卡在solving environment的解决方法

使用国内镜像源,但install仍旧一直卡在solving environment,超过10分钟就不用等了; 检查C:\Users\UserName 路径下的.condarc文件 将这个defaults这一行删掉即可...

神经网络和AI的关系

神经网络(Neural Networks)和人工智能(Artificial Intelligence,AI)之间存在紧密的关系,可以概括为以下几点: 神经网络是AI的子领域:神经网络是人工智能的一个子领域,它是…...

[牛客]计算机网络习题笔记_1020

1、物理层:以太网 调制解调器 电力线通信(PLC) SONET/SDH G.709 光导纤维 同轴电缆 双绞线等。 2、数据链路层(网络接口层包括物理层和数据链路层):Wi-Fi(IEEE 802.11) WiMAX(IEEE 802.16) ATM DTM 令牌环 以太网 FDD…...

蓝牙音视频远程控制协议(AVRCP)介绍

零.声明 本专栏文章我们会以连载的方式持续更新,本专栏计划更新内容如下: 第一篇:蓝牙综合介绍 ,主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍。 第二篇:Trans…...

家庭WIFI路由器、无线网卡购买指南

一、参考资料 【Wi-Fi】802.11/802.11b/802.11g/802.11n/802.11a/802.11ac/802.11ax/802.11be 从带宽到路由,从有线到无线,从需求到选购,从布网到实测,全部说尽。基础篇(1) 【一文详解】802.11a/b/g/n/ac/…...

Matlab2022b软件如何切换中/英文界面?

在中文Windows操作系统中,MATLAB2015b之后版本安装默认为中文版,但有部分用户还是习惯使用英文界面下的MATLAB(个人偏好),下面以R2022b版分享一下中/英文界面的切换方法,超简单。 一、中文切换为英文界面&…...

通过后端数据交互,实现【会议Oa小程序】首页数据渲染

🏅我是默,一个在CSDN分享笔记的博主。📚📚 🌟在这里,我要推荐给大家我的专栏《微信小程序 》。🎯🎯 🚀无论你是编程小白,还是有一定基础的程序员,…...

I.MX6U开发板上的Qt串口编程

真正串口通讯所需的功能是比较多的,此处的上位机只实现发送和接收功能。因为Linux、windows和开发板上均有串口,所以所开发的上位机在其上都是可以运行的。 文章目录 1. 资源简介2. 应用实例2.1 项目简介:2.2 03_serialport.pro2.3 mainwind…...

深入理解多线程编程和 JVM 内存模型

文章目录 1. 理解进程和线程的概念进程(Process)线程(Thread) 2. 理解竞态条件和死锁竞态条件(Race Condition)死锁(Deadlock) 3. JVM 内存模型堆(Heap)栈&am…...

QML(25)——文本输入框组件的区别(TextField TextInput TextArea TextEdit)

目录 效果展示适用场景文本组件TextLabelText和Label的区别 单行文本输入框TextFieldTextInputTextField 和 TextInput的区别 多行文本输入框TextAreaTextArea 和 TextEdit 的区别 效果展示 适用场景 场景组件属性短文本Text长文本 末尾省略Textelide: Text.ElideRight文本设置…...

SpringBoot连接MySQL密码错误,报错:Access denied for user

记:一次连接MySQL报密码错误,Access denied for user 检查步骤: 核对用户和密码是否正确,用工具登陆试下。如果配置文件是yml格式,配置密码是123456这种纯数字,记得加上单/双引号。检查云上数据库配置&am…...

如何使用visual studio 2010构建SQLite3.lib文件

sqlite3官网只提供了dll,并没有lib文件。需要自己生成sqlite3.lib。因项目升级到x64,以前并没有生成64位的链接库,需要自己创建。本人电脑操作系统windows 10, 开发环境为visual studio 2010。下面是详细生成过程。 1. 从源下载源&#xff08…...

反转链表review

反转链表 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this.next next; }* }*/ class …...

UG\NX二次开发 获取用户默认设置中的绘图信息 UF_PLOT_ask_session_job_options

文章作者:里海 来源网站:《里海NX二次开发3000例专栏》 感谢粉丝订阅 感谢 m0_58724732 订阅本专栏,非常感谢。 简介 UG\NX二次开发 获取用户默认设置中的绘图信息 UF_PLOT_ask_session_job_options 效果 代码 #include "me.hp...

数字图像处理实验记录五(图像的空间域增强-锐化处理)

前言: 文章目录 一、基础知识1,什么是锐化?2,为什么要锐化?3,怎么进行锐化? 二、实验要求任务1:任务2:任务3: 三、实验记录:任务1:任…...

基于水基湍流优化的BP神经网络(分类应用) - 附代码

基于水基湍流优化的BP神经网络(分类应用) - 附代码 文章目录 基于水基湍流优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.水基湍流优化BP神经网络3.1 BP神经网络参数设置3.2 水基湍流算法应用 4.测试结果…...

RexUniNLU中文NLP分析系统实战:电商评论情感分析全流程解析

RexUniNLU中文NLP分析系统实战:电商评论情感分析全流程解析 1. 电商评论分析的痛点与解决方案 在电商运营中,用户评论是最直接的反馈渠道。传统的情感分析工具往往面临三大困境: 维度单一:只能判断整体正负面,无法区…...

Windows 10安卓子系统终极指南:轻松运行Android应用的完整解决方案

Windows 10安卓子系统终极指南:轻松运行Android应用的完整解决方案 【免费下载链接】WSA-Windows-10 This is a backport of Windows Subsystem for Android to Windows 10. 项目地址: https://gitcode.com/gh_mirrors/ws/WSA-Windows-10 还在为Windows 10无…...

HTML函数能否用触控板高效编写_触控硬件操作体验评估【汇总】

...

从CCF A类清单看计算机学科前沿:如何选择你的学术发表阵地

1. CCF A类清单:计算机学术圈的"米其林指南" 第一次看到CCF A类清单时,我正为博士开题选方向发愁。导师甩给我这份列表说:"这就是计算机学界的米其林三星榜单,发一篇能顶三篇普通论文。"后来我才理解&#x…...

3分钟搞定B站缓存视频转换:m4s转MP4完整教程

3分钟搞定B站缓存视频转换:m4s转MP4完整教程 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾为B站视频下架而心痛&#xff1…...

2026年,我为什么劝你认真考虑UK Biobank数据库?

在一些低门槛的数据库相继经历“拒稿潮”之后,UK Biobank(英国生物银行)这个含金量巨高的数据库,依旧能打,值得深耕!UKB不仅拥有全球最大规模的50万参与者全基因组数据,还包含10万人的全身多模态…...

不止于显示:深入MATLAB机器人工具箱,从URDF模型提取质量、惯量、重心等动力学参数

不止于显示:深入MATLAB机器人工具箱,从URDF模型提取质量、惯量、重心等动力学参数 在机器人动力学建模与仿真中,精确的物理参数是确保算法准确性的基石。许多开发者习惯将URDF文件仅视为3D模型载体,却忽略了其中蕴含的质量分布、惯…...

用PPClaw一键部署OpenClaw,真能省下那“最后一公里”吗?

先说结论PPClaw确实能大幅降低OpenClaw的初始部署门槛,尤其适合快速验证场景工具的核心代价在于对PPIO平台的依赖,以及模型选择和配置的灵活性限制长期使用需要考虑成本控制、服务稳定性和与自有系统的集成复杂度从实际部署成本和工具适用边界切入&#…...

终极指南:使用OpenBoardView免费开源工具高效查看和分析PCB电路板文件

终极指南:使用OpenBoardView免费开源工具高效查看和分析PCB电路板文件 【免费下载链接】OpenBoardView View .brd files 项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView 你是否曾经遇到过需要查看.brd电路板文件却找不到合适的软件?…...

Linux内核中的设备驱动详解

Linux内核中的设备驱动详解 引言 设备驱动是Linux内核中的重要组成部分,它负责管理硬件设备与内核之间的通信。设备驱动为应用程序提供了访问硬件设备的接口,使得应用程序可以无需了解硬件的具体实现细节。本文将深入探讨Linux内核中的设备驱动机制&…...