探索中国CIO人才现状 | 第四季调研报告
免费ERP软件2BizBox 的技术架构简析
2014-03-12  作者:e-works 

  迄今为止,ERP软件2BizBox的发展已经历了二十年的发展时间,且一直伴随着Serva集团的发展而成长,其技术架构同时也在发展、变化和演进,也有了更清晰的定位。


  2BizBox的定位


  完整的制造行业标准ERP软件,主要面向中小机械制造型企业。其特征主要是年销售额约10亿人民币以下、500个客户端一下、以进销存或生产为主的离散型制造企业。2BizBox的典型客户是企业规模不是特别大,对企业的信息化有一定的了解和需求,同时又缺乏大规模信息化资金投入。2BizBox倡导的是自我学习和自我实施的信息化理念。通过科学的了解ERP软件和相关理论,打破ERP软件的神秘感和种种误区,逐渐通过“自我实施”的方法来有步骤、循序渐进的进行企业的信息化建设。


  2BizBox整个系统前后台代码均使用Java语言编写,并基于JavaEE技术。整个系统可以分为客户端(前台)和服务器端(后台)两部分。前台主要是UI客户端程序,为用户展示数据、提供交互;后台负责数据的处理和后台业务逻辑实现。随着应用的日趋复杂,前台客户端程序又分为核心的桌面程序、基于Web的对外模块、基于PDA和移动数据采集器的WindowsCE客户端、基于手机和掌上电脑的Mobile客户端,等等。


  JDK:前后台JDK版本保持一致,目前一直保持最新的JDK6;


  GUI:使用Swing开发图形界面,使用自行开发的通用图形组件库。同时,一些Web模块则使用静态页面HTML、JSP、Extjs、Flash/Flex(如供应商在线模块等);


  通讯:由于前后台使用EJB进行通讯,所以通讯协议主要为EJB支撑协议RMI/IIOP。对于Web模块以及一些特殊模块(如Document管理),使用HTTP协议传输数据。对于账上设备,采用XML的数据格式进行封装和转换,增加灵活性,降低处理消耗;


  后台:通过EJB对外提供通讯接口;Web部分通过几个Servlet提供数据接口。内部使用EJB、业务层、DAO层、Hibernate层、JDBC层与数据库交互;


  数据存储:系统大部分数据,存于MySQL数据库中。同时,系统也提供FTP服务器实现一些数据的存储(主要是图纸、文档等模块);


  上面的图中,客户端主要是GUI部分。它基于Swing并通过JavaWebstart或独立客户端安装程序进行发布,安装在企业内部用户桌面上,用于进入2BizBox系统。此外,客户端也提供了基于Web部分的一些补充模块,对外部用户提供服务,如供应商、客户等。


  通讯部分,客户端GUI部分使用EJB与HTTP的方式与后台通讯,交换数据。Web部分通过HTTP与后台的Servlet进行通讯,获得数据。


  服务器侧主要负责API提供、业务处理、数据处理等。通过LoginManagerEJB对外提供GUI客户端接入,并将请求转发其他具体模块的EJB处理。模块EJB将请求转到业务层进行数据校验、相关动作处理,最后交给DAO层进行数据处理。DAO最后通过Hibernate层对数据库进行数据的操作,包括数据的增删改查等。除数据库外,系统一些文档等数据存储在另外的FTP服务器上。这部分的处理一般在Servlet中进行,客户端通过Servlet上传文档,并转发到FTP服务器中。


  关于2BizBox


  2BizBox软件来自美国,公司总部位于美国德州WichitaFalls。其愿景是为全世界所有的中小企业和制造企业都能用上高质量的免费管理软件,享受现代IT业给全世界带来的便利。ERP软件可以不用花钱,使用起来也可以很简单。2BizBoxERP软件已经存在了20年,每天,它都在为很多企业处理这成千上万的业务数据。