好吧,我不得不承認,我不擅長泛型類型在Java中JSON序列化/反序列化的泛型類型與谷歌,GSON
我已經寫在C#中使用JSON序列化/反序列化類JavaScriptSerializer
private static JavaScriptSerializer js = new JavaScriptSerializer();
public static T LoadFromJSONString<T>(string strRequest)
{
return js.Deserialize<T>(strRequest);
}
public static string DumpToJSONString<T>(T rq)
{
return js.Serialize(rq);
}
它在C#中運行良好。現在我試圖轉換或至少在Java中編寫另一個JSON序列化/反序列化類。我試過flexjson和google-gson但我不知道如何在Java中指定<T>。
有人可以幫我嗎?順便說一句,我更喜歡谷歌,GSON
嗯,但是假設我只有類信息作爲字符串,例如'String clazz =「com.example.Response」',那麼我怎樣才能使用這段代碼呢? – 2010-11-22 07:27:53
您可以使用Class.forName(「com.example.Response」)來查找它。 – StaxMan 2010-11-23 00:57:38
是的,我已經嘗試過了。但事情是,當我使用'Class.forName()'時,返回類型必須是'Object'而不是'Response',我必須清楚地聲明如下:'Response rp =(Response)LoadFromJSONString(resString ,Class.forName(「com.example.Response」))' – 2010-11-23 02:26:44