org.springframework.data.redis.serializer.SerializationException: Could not read JSON: Can not construct instance of xxx: no int/Int-argument constructor/factory method to deserialize from Number value 异常解决

  • 异常消息
  • 解决办法
  • 主要修改

异常消息

org.springframework.data.redis.serializer.SerializationException: Could not read JSON: Can not construct instance of com.h.dog.entity.Message: no int/Int-argument constructor/factory method to deserialize from Number value (133)at [Source: [B@1f370472; line: 1, column: 1]; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of com.h.dog.entity.Message: no int/Int-argument constructor/factory method to deserialize from Number value (133)at [Source: [B@1f370472; line: 1, column: 1]
at org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer.deserialize(Jackson2JsonRedisSerializer.java:73)
at org.springframework.data.redis.core.AbstractOperations.deserializeHashKey(AbstractOperations.java:330)
at org.springframework.data.redis.core.AbstractOperations.deserializeHashMap(AbstractOperations.java:282)
at org.springframework.data.redis.core.DefaultHashOperations.entries(DefaultHashOperations.java:227)
at com.h.dog.DogApplicationTests.Test3(DogApplicationTests.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75)
at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86)
at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:252)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

解决办法

在你的自定义序列化器中修改

 @Configurationpublic class RedisConfig  {@Beanpublic RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {// 1.创建 redisTemplate 模版RedisTemplate<Object, Object> template = new RedisTemplate<>();// 2.关联 redisConnectionFactorytemplate.setConnectionFactory(redisConnectionFactory);// 3.创建 序列化类Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Message.class);Jackson2JsonRedisSerializer jaHashKey = new Jackson2JsonRedisSerializer(Integer.class);template.setDefaultSerializer(jackson2JsonRedisSerializer);template.setHashKeySerializer(jaHashKey);return template;}
}

主要修改

Integer.class报什么类型错就可以改这里 例如Can no String/String–argument constructor/factory method to deserialize from Number value 就改成String.class

Jackson2JsonRedisSerializer jaHashKey = new Jackson2JsonRedisSerializer(Integer.class);template.setHashKeySerializer(jaHashKey);//这里改成setxxxxSerializer根据实质来修改

为了这个错误找了好几天现在分享给大家 我也是刚学 如果有地方说错请各位包涵

Can not construct instance of com.h.dog.entity.Message: no int/Int-argument constructor/factory meth相关推荐

  1. com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of `x`

    记录一下有点蠢的问题,序列化再次序列化就会出现这种问题. [2022-05-16 10:18:18.645] [ERROR] com.fu.common.global.GlobalExceptionH ...

  2. Cannot construct instance of `com.*` (although at least one Creator exists): cannot deserializ

    今天开发的springboot项目的时候,当前端发出请求的时候,还没有进入controller层就爆出了这样的一个错误. Cannot construct instance of `com.***.* ...

  3. Jackson:Cannot construct instance of **** (although at least one Creator exists):

    Jackson:nested exception is java.lang.IllegalArgumentException: Cannot construct instance of **** (a ...

  4. Cannot construct instance of `com.*` (although at least one Creator exists): cannot deserialize

    今天在写springboot单元测试的时候,序列化对象时出现一个错误: Cannot construct instance of `com.*.GeneralResponse` (although a ...

  5. JSON parse error: Cannot construct instance of “xxx“(although at least one Creator exists)

    今天写SpringBoot出现一个错误 JSON parse error: Cannot construct instance of `priv.kuki.param.AddressListParam ...

  6. com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.zyw

    问题如下 com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of com ...

  7. 【Redis 反序列化报错】 Cannot construct instance of `com.vt.common.Result` (no Creators, like default constr

    最近做了一个项目,数据量比较大,所以用到了 @Cacheable注解,嫌麻烦,百度找了相关配置,如下: 序列化配置@Beanpublic static RedisTemplate<String, ...

  8. Redis缓存写入数据,解决Could not read JSON: Cannot construct instance of `xxx.xxDTO`的问题

      场景: 使用 redis 存取对象的时候报错,报错信息如下: :40 - 捕捉的异常信息:Could not read JSON: Cannot construct instance of `co ...

  9. 解决 Can not construct instance of `xxxxx`

    项目中使用了Lombok,这次升级之后,出现了如下问题: Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not ...

最新文章

  1. [轉]俞老师在同济大学的演讲词:度过有意义的生命
  2. 重磅开源人工智能大型场景草图数据集图像检索草图着色编辑和字幕
  3. python 图像像素的坐标系方向, PIL库中Image.getpixel()方法, 相机标定之四个坐标系及其关系
  4. oracle索引使用例子,Oracle中利用函数索引处理数据倾斜案例
  5. JS之onsubmit事件与组织事件外延
  6. Apache Bench
  7. [CentOs7]搭建ftp服务器(3)——上传,下载,删除,重命名,新建文件夹
  8. Mac电脑上非常好用的英汉互译词典软件
  9. Javascript特效:简易留言板
  10. 一款好看透明个人主页源码
  11. 二叉树遍历算法C++实现
  12. mysql varbinary 转换_mysql binary和varbinary存储字段转换大小写
  13. Ryu学习总结(持续更新)
  14. jsp 按照学号查找学生_​全国学籍号查询平台:https://my.chsi.com.cn/archive/index.jsp...
  15. IEEE Access投稿流程经验分享
  16. Unix BSD Linux的口令机制初探
  17. Android 模拟器横屏竖屏切换设置
  18. PDF删除水印怎么在PDF编辑软件内执行
  19. 【蝴蝶效应】【青蛙现象】【鳄鱼法则】 【鲇鱼效应】 【羊群效应】 【刺猬法则】 【手表定律】 ...
  20. 清华计算机系校服,北大清华(清华大学各系校服)

热门文章

  1. 银行核心业务系统全盘西化成功与否都是警钟
  2. html form 提交json数据格式,表单提交时编码类型enctype详解
  3. 悟空CRM(基于jfinal+vue+ElementUI的前后端分离的开源CRM系统)
  4. 力扣:我的日程安排表I
  5. inet_addr报错
  6. 搞明白这八个问题 Linux系统就好学多了
  7. 「编程猫」融资13亿破记录 编程是如何风靡到小学生课程的?
  8. Failed to find provider info for xxx,Unknown URL content 的问题归因和解决办法
  9. 高中学计算机都是学什么,计算机有哪些专业主要学什么
  10. html 中 block、inline-block 都有哪些?都有什么样的特性?