2012-08-03 109 views
3

例如,我有一個JSON格式是這樣的:我可以在運行時通過JSON動態創建一個Java對象嗎?

{ 「類」: 「MySpecialClass」, 「attri1」: 「VALUE1」, 「attri2」: 「VALUE2」}

我想要創建一個Object,它是一個MySpecialClass Object,並獲得兩個屬性attri1attri2,其值爲value1value2

這裏是要求:

  1. 我有一個類文件,命名MySpecialClass,並有attri1attri2,我可以創建該對象,並在此賦值?

  2. DONT'T有類文件MySpecialClass,我想在運行時生成它,這是可能的嗎?謝謝。

+2

可能的重複http://stackoverflow.com/questions/1395551/convert-a-json-string-to-object-in-java – 2012-08-03 08:48:17

回答

2

使用任何Java/JSON解析器,您的第一種情況是完全可行的。

你的第二種情況是可能的,但努力工作。

您可以在運行時使用字節碼工程 - 例如使用Apache BCEL。請注意,JSON將只包含字段,而不包含行爲或類型。

0

你想要一個JSON處理器是什麼,像Jackson。我不確定你可以用這種方式輕鬆完成你的第二種情況,因爲你可能最好看JVM的JavaScript實現,除非你想進入像飛行字節碼操作那樣的東西。有one in the Java6 runtime

相關問題