——略談Java web軟體如何提供二次開發介面 接手公司的一個Java web軟體產品,該軟體採用傳統的dwr框架。dwr框架相當於一個中間層,使得javascript能夠識別Java類對象,進而能夠調用Java類對象的方法。該軟體要為項目部同事提供二次開發包。 這種方式界面層代碼和邏輯實現代碼混 ...
——略談Java web軟體如何提供二次開發介面
接手公司的一個Java web軟體產品,該軟體採用傳統的dwr框架。dwr框架相當於一個中間層,使得javascript能夠識別Java類對象,進而能夠調用Java類對象的方法。該軟體要為項目部同事提供二次開發包。
這種方式界面層代碼和邏輯實現代碼混淆在一起,導致二次開發很難使用。項目部要定製系統,必須得到整個系統的源碼。
改造思路是web界面層和介面實現代碼進行分層,結構圖如下:
具體就是介面實現層封裝為後臺模塊,web界面層封裝為web界面模塊。頁面直接post請求server來顯示數據,javascript調用示例代碼如下:
function postQuery(){
//str為參數列表字元串
str = {categoryId:"2",id:"2",path:"Y:\\UPLOAD_ZIP_PATH/1.zip", type:"c++"};
var str1 = JSON.stringify(str);
$.post("http://localhost:8080/PIESoaServer/service/delete",str1,function(data){
console.log(data);
});
}
上面的代碼解釋如下:str ={categoryId:"2",id:"2",path:"Y:\\UPLOAD_ZIP_PATH/1.zip",type:"c++"}; 為參數值列表。categoryId為參數,"2"為對應的參數值,如果參數需要一個數值類型的,則不需要使用雙引號包含,數組則採用[]包含起來,比如str ={nodes:[9,20,21],serviceId:47};
後臺模塊對外不提供源碼,web界面模塊的源碼作為二次開發示例提供給二次開發者。這樣方式為二次開發提供了靈活的調用方式,因為web介面無論java、C#還是C++、python等都可以調用。
java學習群669823128