我有一个类似于以下的课程:
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.springframework.util.StringUtils;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
@Data
public class MyTestClass {
@JsonProperty("first")
private List<String> first = new ArrayList<>();
@JsonProperty("second")
private List<String> second = new ArrayList<>();
@JsonProperty("third")
private List<String> third = new ArrayList<>();
public static MyTestClass emptyFilter() {
return new MyTestClass();
}
@SuppressWarnings("unused") //JSR311
@Nonnull
public static MyTestClass fromString(@Nullable String jsonString) {
if (StringUtils.isEmpty(jsonString)){
return emptyFilter();
}
return JsonUtils.fromJSONString(jsonString, MyTestClass.class, false);
}}
我的问题是关于RESTfull调用webservice的输入。我的请求必须有一个filter参数,这个参数应该引用这个类。因此,我给出的过滤器参数如下所示:
{"MyTestClass":{"first":[],"second":[],"third":[]}}但我总是会犯这样的错误:
Failed to convert value of type 'java.lang.String' to required type 'MyTestClass'我是Spring框架的新手,我的问题可能是愚蠢的:
jsonObject的JsonArray。jsonObject中的主参数应该是什么,其中包括JsonArray。我使用了类名,如您所见。对吗?如果我从stackoverflow上的其他一些问题中正确地理解了它,那么当我使用基于Spring编写的类时,我应该使用它。jsonArray的名称,因为它们是类的变量。但是包含所有这些数组的jsonObject的名称又如何呢?我还应该提到,我的工作是在一家公司,这是一个非常大的项目的一小部分,这个项目最近被转换为Spring框架,我们正在测试是否一切都在正常工作。
发布于 2017-08-17 06:54:31
根元素不需要由json中的名称引用。测试字符串应该是
{"first":[],"second":[],"third":[]}https://stackoverflow.com/questions/45728258
复制相似问题