在開發軟件期間,我需要執行一條語句,該語句存儲爲string
。舉例來說:在運行期間動態添加組件到JPanel
String test = " int a; ";
在上面的例子中,我想聲明一個變量a
。
另一個例子是MySQL的語句從string
執行:
String sqlquery ="SELECT * FROM FULLDETAILS WHERE Classname = 'test' ";
con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/executable","root","mysql");
st = (Statement) con.createStatement();
rs = st.executeQuery(sqlquery);
^
我想要實現這個對於Java語句了。有沒有辦法?
編輯:
鑑於上述情況就是一個例子,真實的情況是非常不同的(但基本上,我需要的東西是一樣的)。
這種情況是,我有一些jpanels
,我想向它添加一些組件,比如說label
,標籤的內容是從數據庫中獲得的,並且它的唯一情況是在運行時我可以知道我應該添加組件的面板。在這種情況下,我不能按名稱指定panel
,說如果我有10 jpanels
,我以爲我可以使用這樣的字符串:
String test = " jpanel " + i + " .add(jlabel1); " ;
將導致測試值將是:
jpanel1.add(jlabel1); // provided i is a string with value of i is 1
現在我想執行此操作。有沒有辦法?
你爲什麼要這麼做? – yannis
不簡單。 AFAIK,標準JRE不包括編譯器。此外,所有本地變量可能有其他名稱。如果這是可能的,可能只能通過從字符串創建一個新類。 – fuz
@YannisRizos請參閱編輯!我不確定我是否成功傳達了這個想法,但相信我需要這個:D有沒有辦法? – COD3BOY