我目前遇到了将数据动态导入MySQL
数据库的要求(但是使用java
)。
我不确定这是什么最佳做法,但让我提出我的情景。
json可以是动态的,并且不确定每次从API端点读取时json中的内容 例如:
"table1" : {
"field1" : "value1",
"field2" : "value2",
"field3" : "value3"
}
json有一次会像这样
另一次可能是
"table2" : {
"field1" : "value1",
"field2" : "value2",
"field3" : "value3",
"field4" : "value4"
}
所以我的问题是我应该解析json并将其与表中与json名称匹配的字段进行比较吗?
或者java中是否有任何库可以让我轻松有效地处理这个问题。
注意:我必须将此服务作为一项服务进行准备,该服务将在特定时间间隔后连续扫描给定的API,并且相应的JSON需要导入其所属的表中,如果表格没有t存在然后它必须自动创建。
感谢所有患者的阅读和支持,这是一项我从未处理过的新要求。
提前谢谢你!
答案 0 :(得分:1)
您可以使用google-gson或jackson api来提高代码效率
答案 1 :(得分:1)
在我的项目中,我使用了google-gson API。它运作良好,无痛。 您可以使用它的描述here找到项目。
下面是API docs的一个简单示例,它支持多维数组,具有任意复杂的元素类型:
收藏示例
Gson gson = new Gson();
Collection<Integer> ints = Lists.immutableList(1,2,3,4,5);
// Serialization
String json = gson.toJson(ints); // ==> json is [1,2,3,4,5]
// Deserialization
Type collectionType = new TypeToken<Collection<Integer>>(){}.getType();
Collection<Integer> ints2 = gson.fromJson(json, collectionType);
// ==> ints2 is same as ints
希望这会有所帮助。