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

马鞍山建设工程监督站建管处网站网站备案人授权书

马鞍山建设工程监督站建管处网站,网站备案人授权书,男科医院咨询免费,提高工作效率英语本文将持续记录我在使用 Jackson 进行 JSON 序列化与反序列化过程中遇到的各种问题和解决方案,适合正在使用或准备替换 FastJSON 的 Java 开发者参考。 问题一:非静态内部类无法反序列化 0、使用 Testpublic void test2() throws JsonProcessingExcepti…

本文将持续记录我在使用 Jackson 进行 JSON 序列化与反序列化过程中遇到的各种问题和解决方案,适合正在使用或准备替换 FastJSON 的 Java 开发者参考。


问题一:非静态内部类无法反序列化

0、使用

 @Testpublic void test2() throws JsonProcessingException {String json = "{\"username\":\"admin\",\"nickName\":\"若依\",\"userId\":1}";ObjectMapper mapper = new ObjectMapper();User user = mapper.readValue(json, User.class);System.out.println(user.getUsername()); // admin}public static class User{private String username;private String nickName;private Long userId;public User() {}public User(String username, String nickName, Long userId) {this.username = username;this.nickName = nickName;this.userId = userId;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getNickName() {return nickName;}public void setNickName(String nickName) {this.nickName = nickName;}public Long getUserId() {return userId;}public void setUserId(Long userId) {this.userId = userId;}}

1、异常信息:

com.fasterxml.jackson.databind.exc.InvalidDefinitionException: 
Cannot construct instance of `com.wenge.business.JackSonTest$User`: 
non-static inner classes like this can only be instantiated using default, no-argument constructor

2、出现场景:

当你尝试将一个 非静态内部类(non-static inner class) 作为 Jackson 反序列化的目标类型时,会抛出该异常。

例如:

public class JackSonTest {public class User { ... }
}

3、原因分析:

Java 中的非静态内部类隐式持有外部类的引用,因此不能通过默认无参构造函数创建实例。而 Jackson 默认依赖无参构造函数来构建对象,所以无法反序列化这类对象。

4、解决办法:

方法一:改为 static 静态内部类(推荐)

public class JackSonTest {public static class User {private String name;// 必须提供无参构造函数public User() {} // getter / setter}
}

方法二:提取为独立类(更推荐)

// 文件名:User.java
public class User {private String name;// 必须提供无参构造函数public User() {}// getter / setter
}

5、小结:

问题原因解决方法
Jackson 无法反序列化非静态内部类内部类需要外部类实例,无法通过无参构造创建改为 static 类 或 提取为独立类

http://www.dtcms.com/a/530600.html

相关文章:

  • 曲阜网站建设哪家好工信部网站备案怎么查询
  • 深圳三合一建设网站企业管理培训课程班
  • 制作一个自适应网站seo引擎优化教程
  • 建立网站有什么用台州做网站的公司
  • 如何建设自己的网站 知乎静态网站如何共用一个头部和尾部
  • 凡科做网站不要钱wordpress模板添加授权
  • 网站1g空间多大wordpress 子域名
  • 如何用vps建网站2345网址导航中国百年品牌
  • 恶意点击别人的网站做企业英语网站要注意哪些
  • 青羊区网站建设企业网站源码进一品资源网
  • 网站开发公司云鲸互创实惠wordpress导航横着
  • 高端网站的制作app产品网站建设
  • 零基础做地方门户网站东莞市seo网络推广价格
  • 国际外贸网站建设模板网站zencart
  • 商务科技网站建设专业的扬州网站建设
  • w676休闲娱乐代理售票系统
  • 营销型网站建设易网拓你知道的在线视频观看的
  • 哈尔滨做网站哪好怎样做网站维护
  • 临沂网站建设方案服务c2c的代表性电商平台
  • 哪里有免费网站空间申请用react做的网站
  • 河南网站托管高端网站设计平台
  • 第五章:RAG:让AI“知其所能,亦知其不能”
  • 专业做网站方案ppt中国建设银行个人登录查询入口
  • 用网站还是阿里巴巴做sohowordpress dopt函数
  • 廊坊做网站厂商定制烘焙类网站开发时代背景
  • 湖南住房城乡建设厅网站网页编辑代码
  • 城市联盟网站怎么做做响应式网站哪家公司好
  • 商城网站开发教程做招聘网站用哪个cms
  • 网站怎么样做优化wordpress手机 问题
  • 所有网站收录入口企业邮箱要收费的吗