我对Java很陌生,想问一些新手问题。我的任务是使用API通过函数传入IM()接收json对象。一旦我以字符串形式收到它,就将该json对象传递给序列化函数,然后使用GSONE Java库将其隐式传递给java对象。
//在String str中接收Json对象并传递给函数 序列化()
public void incomingIM(IncomingImInterface incomingImInterface) {
String str=incomingImInterface.getMessage();
serialization(str);
}
///使用GSON Java库将json转换为Java对象 //将值从Json对象传递到Java对象
public MainActivity(String name,String age){
this.name=name;
this.age=age;
}
///将json对象作为字符串并使用GSON库进行转换 到Java对象
public static void serialization(String str){
String userJson= str;
Gson gson = new Gson();
MainActivity userSimple = gson.fromJson(userJson, MainActivity.class);
}
答案 0 :(得分:0)
您绝对可以将JSON作为字符串传递,这是正常的操作。只需在需要时使用GSON或Jackson解析字符串,反之亦然。您可以直接往返于POJO,也可以只使用地图。
如果您正确设置了许多Web框架(例如Spring),它们会为您自动将JSON从字符串转换为Java对象(POJO)(它们倾向于利用Jackson来实现)。当返回响应时,它们也会转换回去。我想说这是Web代码的首选方法。如果您不在网络代码中,尽管手动进行将是很正常的。