首页 > 解决方案 > 无法使用 jakson 将接口对象序列化为 json

问题描述

我试图根据 API 的声明模式使用 jakson 将 java 对象转换为 json。但我想不通。我该怎么做?

这是我的课

ProcessValueBaseDto

package com.ir.tsn;
public class ProcessValueBaseDto implements Serializable {

private String id;
private ProcessValue value;

}
//methods Ommited

过程值

package com.ir.tsn;
public interface ProcessValue<T> extends Serializable {

void setValues(T values);

}
//methods Ommited

过程值Dto

package com.ir.tsn;
public class ProcessValueDto implements 
ProcessValue<List<String>> {

private List<String> values;

}
//methods Ommited

预期的 json 应该是这样的

{
   "id": "id1",
   "value": {
          "com.alz.ProcessValueDto": {
            "values": [
              "500000000"
            ]
          }
   }
}

com.alz.ProcessValueDto是API中ProcessValue.class实现之一的名称

先感谢您

标签: javajsonspringwebserialization

解决方案


我无法真正理解这个问题,但我从您发布的代码中看到的一个问题是您有两个同名的类。此外,如果代码都在同一个文件中,您应该将其拆分,因为在同一个文件中不能有多个公共类或接口。


推荐阅读