通过存储在Java通用对象中的json对象的字段获取数据

时间:2019-08-22 16:19:59

标签: java json generics

我在对象的通用字段中收到JSON字符串。我想使用Java的反射功能仅从此JSON中获取几个字段。还是我有点天真。有人可以给我一些指示吗?

我尝试了以下教程,但让我更加困惑。我通过此DTO收到了

public  abstract class  AbstractDTO<T> {
    String field1;
    T data;

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }
}
字段data

值是JSON字符串。我不想为此字段写DO,因为它会破坏通用数据类型的数据的目的。

1 个答案:

答案 0 :(得分:0)

目前尚不清楚为什么需要反思。如果data的值是代表JSON编码数据的字符串,那么问题将减少为parsing a JSON object。以org.json为例:

AbstractDTO<String> dto = // gets the dto
JSONObject object = new JSONObject(dto.getData());
object.getString("myField"); // Sample

最后一行显示了检索类型为String的字段值的示例,但是JSONObject当然还有其他选择。