有很多的方法來建立插件模塊。 一些想法:
你可以將每個插件模塊打包成一個jar文件,並將其放在這個jar的類路徑根目錄中,並將一個spring配置文件與beans配置文件放在一起,所以如果你使用的是特定的插件。通過簡單地在web.xml中添加此文件contextConfigLocation的參數可以「打開」這個包在Web應用程序的豆類:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:module1.xml
classpath:module2.xml
classpath:module3.xml
classpath:module4.xml
</param-value>
</context-param>
所以,你可以在你的Web應用程序使用這些bean。這樣做的另一種方法是使用更多註釋驅動的方法。或者你可以混合使用這些方法。
前段時間,我構建了一種方法,通過檢測類路徑中特定抽象類(合同)的所有實現,自動熱檢測(在執行時,無需重新啓動應用程序)桌面應用程序中的插件。所以,我所需要做的就是構建一個新的插件,即實現這個「合同」。我已經使用了一些「classloader」好東西來做到這一點。
在談到「模塊」,也許你會看到一些關於OSGi
嗯...這些都是一些想法。我希望它以任何方式幫助。 ;-)
是的,我想,我會用這種方法去。感謝所有的答案 – 2011-03-07 19:55:51