java應用簡單嵌入腳本模塊

 

現在很多應用的業務邏輯會經常根據不同需求而加以修改,比如在線遊戲需要更新任務和日常活動.

通常的方法就是在設計的時候能把這部分抽離出來,把這部分的邏輯放大腳本模塊處理.

腳本動態更新的靈活性大家都知道的...

在此介紹一個簡單的方式如何把腳本嵌入應用...

熟悉java jdk的朋友應該知道1.6以後

javax.script 對主流腳本語言都給予了支持.

這裏主要用groovy爲例來說明一下,groovy相信大家也應該熟知了,會java寫groovy的很輕鬆,可以直接寫java代碼,在這裏並沒使用JSR 223 Scripting特性.

因爲只用一種腳本的話,就直接上吧哈哈...

 

其實很簡單,先說明下幾個類的功能吧

 

 

ScriptManager//負責腳本的加載和調用管理
IScriptHandler//做爲一個接口來橋接與其它業務的邏輯

 

 

加載腳本

 

GroovyScriptEngine engine = new GroovyScriptEngine(path);
Binding binding=new Binding();
engine.run(script_file, binding);

 groovy,運行默認會調用main方法的

 

在MasterHandler腳本里面把具體的業務腳本注入到腳本容器裏面

 

 

ScriptManager.registerHandler(new SayHelloworldHandler());

 

剩下的就是調用,和重新加載了...

在ScriptServer裏面模擬了業務調用和熱加載,具體應用的時候可以通過其他的方式觸發腳本熱加載...

比較簡單的用例,望多多指教... 

樣例代碼在附件裏面!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章