谈一次java web系统的重构思路

来源:互联网 发布:局部搜索算法历史 编辑:程序博客网 时间:2024/06/16 13:43

                                                                                         ——略谈Java web软件如何提供二次开发接口

 

作者:朱金灿

来源:http://blog.csdn.net/clever101

 

       接手公司的一个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等都可以调用。

原创粉丝点击