我從Database
檢索String
變量並存儲在變量中。如何在JAVA中將字符串轉換爲對象
String name = "Peter" ---- >(retrieved from the database)
我已經有一個叫Peter
的課。我需要使用檢索的變量name
來初始化類。
假設,無論是String
從數據庫中檢索,我在我的包爲它定義一個類...
有沒有辦法來爲String
我從Database
檢索Object
?
我從Database
檢索String
變量並存儲在變量中。如何在JAVA中將字符串轉換爲對象
String name = "Peter" ---- >(retrieved from the database)
我已經有一個叫Peter
的課。我需要使用檢索的變量name
來初始化類。
假設,無論是String
從數據庫中檢索,我在我的包爲它定義一個類...
有沒有辦法來爲String
我從Database
檢索Object
?
使用Class.forName()
- java.lang.reflect中 如果我們知道類&的名字,如果它有一個公共的默認構造函數,我們可以創建這樣一個對象。
Class myClass = Class.forName("MyClass");
Class[] types = {Double.TYPE, this.getClass()};
Constructor constructor = myClass.getConstructor(types);
Object[] parameters = {new Double(0), this};
Object instanceOfMyClass = constructor.newInstance(parameters);
如果我們不知道班級名稱怎麼辦?這是我的場景 –
@GowthamShankar:我已經更新了我的答案.. –
Class.forName(name).newInstance()
也可以評論它的類。 –
如果彼得字符串在JSON格式來的,你可以反序列化和「轉換」成一個彼得對象 –
彼得剛剛從SQL表來。它只是作爲一個字符串出現(通過執行sql select調用) –
@Gowtham Shankar:您應該在此添加代碼片段 – Perpetualcoder