我从Kafka队列中获取JSON值,并且想要获取正确的数据类型以将其保存在数据库中。
值可以是:String
,int
,double
或数组。
如何自动检测正确的数据类型并从中创建Java对象?
我的第一步:
检查json是否为数组:
if (jsonValue.isJsonPrimitive()) {
// create new Object
//ToDo need to parse int, double not only to string
new ValueObject(time,jsonValue.getAsString);
} else if (jsonValue.isJsonArray()) {
//create new Object
//ToDo need to parse int, double string
new ValueObject(time,jsonValue.getAsJsonArray());
}
如何设计ValueObject
类将值转换为相应的数据类型并返回正确的对象?
感谢任何想法
答案 0 :(得分:0)
您尝试过吗:
//this instanciates an object of the getClass() method output
Object output = jsonValue.getClass().cast(jsonValue);
如果这不起作用,您可以尝试instanceof
:
if(jsonValue instanceof int){
int output = (int) jsonValue;
}...
我希望那样做。