2012-05-11 24 views
2

我正在尋找一種可能性,在運行時將Java代碼動態加載到 類中。 Java代碼應該來自 XML文件。只有一些「If-Then」表達式,並且應該將 添加到一個類中,並像我的項目中的任何其他類一樣使用它。在運行時從文件中動態創建類

其實我的文件包含我想加載像緩存並使用 此類進一步一些規則碼

有人不知道是否有可能在java中?

問候
Abhij

+0

請問爲什麼代碼是用XML編寫的? –

+1

好神(s)考慮使用Groovy,JRuby等DSL代替:*方式*少工作,並且更容易處理。 –

+0

其實它包含一些像C01 |((customer = registered)和(sales> 70000)的組織規則代碼,那麼它的類型是C01 – Abhij

回答

2

我相信你可以用CGLib做到這一點,但我沒有這樣做不是在運行時用它來模擬類的更多。如果動態代碼是你的應用程序的主要方面,你應該考慮使用像Ruby這樣的語言,它對運行時讀取的代碼有更好的支持。

+0

作爲腳本語言,你可以使用http://www.beanshell.org/ - 它是語法非常像Java一樣 –

+1

你也可以使用javassist,或者只是利用現有的java編譯API ......但我同意使用動態語言是一個更好的解決方案。 –