粮库远程监管系统的设计与开发

2015-05-30 10:48俞琳琳
软件工程 2015年2期

摘 要:本文介绍的粮库远程监管系统基于Java EE平台,采用Web Service技术,能够采集数字粮库系统的业务数据,传输并保存到系统数据库中,具有查询地理地图、个性化首页、统计分析、粮情监测分析、业务单据索引以及视频监控等功能,能够对粮食收购、销售、保管等业务的全过程进行监管。

关键词:粮库远程监管;Java EE;Web Service;Hibernate

中图分类号:TP393.1 文献标识码:A

1 引言(Introduction)

随着数字粮库系统在各地的全面推广,粮库的信息化程度在逐渐提升。在粮食主管部门亟需建设一个统一的粮食管理系统,将各库点连接起来,实现信息化由点到面的全面覆盖,使得粮食主管部门能够对库点的粮食收购、销售、保管等主要业务的全过程进行监管,对发生业务的粮食质量、数量进行精细化管理。建设统一的数据交换平台,使用统一的数据格式,实现库点与粮食主管部门之间的数据共享,同时为粮食主管部门的决策监管提供数据基础。能够利用网络等技术,实现远程查看粮库的视频监控信息和粮情信息,并进行综合分析,反映库存和保管的情况。

2 总体设计(System design)

粮库远程监管系统由粮库数据上报、数据交换平台和前端访问平台三个部门构成,其中粮库数据上报部分负责采集数字粮库的业务数据,经过数据交换平台的处理,将数据传输并保存在系统的数据库中,粮食主管部门通过浏览器直接访问前端访问平台即可查看到粮库的业务数据及视频等信息。

图1 粮库监管系统的架构

Fig.1 Architecture of the grain depot monitoring system

粮库监管平台系统的架构如图1所示,除了能够采集数字粮库系统的业务数据,传输并保存到监管平台的数据库中,系统还具有地理地图查询、个性化首页、统计分析、粮情监测分析、业务单据索引以及视频监控等功能。

3 主要技术简介(Main technical introduction)

粮库远程监管平台系统采用B/S结构,可以支持跨平台的应用,模块化设计,基于J2EE的平台,能比较方便实现开发和维护,支持SOA,可根据业务发展开发新的子系统模块,具有良好的扩展功能和兼容性。数据处理采用大集中的方式管理,后台数据库采用SQLServer,前端支持Windows 7等主流操作系统及常用浏览器。

3.1 Java EE

本系统基于Java EE的技术,采用浏览器+应用服务器+数据库服务器的多层架构,能够不同的操作系统上运行,能够支持大用户数和数据量。

Java EE是一个标准中间件体系结构,旨在简化和规范分布式多层企业应用系统的开发和部署,可显著地提高企业应用系统的可移植性、安全型、可伸缩性、负载平衡和可重用性[1]。Java EE技术的基础是JAVA语言,JAVA语言的与平台无关性[2]保证了基于Java EE平台开发的应用系统和支撑环境可以跨平台运行。

3.2 Web Service

Web Service是一个平台独立的、松耦合的、自包含的、基于可编程的Web的应用程序,可使用开放的XML标准描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序[3]。利用Web Service可以实现在分布式环境下跨平台、跨系统的数据交换,从而实现应用系统的集成。

3.3 Hibernate

Hibernate是一种ORM(Object-Relation Mapping,对象-关系映射)中间件,可以将数据库表中的数据包装为Java对象,又可以将Java对象映射为数据库表中的数据。使用Hibernate的好处是通过Hibernate的对象-关系映射,能够减少程序员的编码工作量,只需要在映射文件中对关系进行定义,然后编写少量的代码便可将实体与关系的维护、对象与关系的转换工作交由对象-关系映射代劳[4]。

4 详细功能设计(Detailed design)

4.1 个性化首页

为用户日常办公提供了一个可自由配置的个性化首页,用户可自行配置所关注的功能模块,使用户使用系统更加便捷灵活。系统提供多个功能组件,作为首页的重要组成部分,同时系统提供多个组件分布方式供用户自行选择。

4.2 地理地图查询

系统利用Flash(或GIS)技术,构建轻量级粮食地理信息地图,以全市地图的方式将市粮食局下辖各库点的地理位置信息、机构概要信息、储藏粮食数量及质量等信息展示出来,并能够进一步查看库点平面图,了解粮库的概况。

①展示的数据是动态数据,并根据粮库的业务数据变化而变化。当鼠标悬停在选中区域时,出现悬浮窗口显示该区域存储粮食的概要信息,亦可点击进入下一层地图进行查询。

②用户可在粮库平面图中,进一步查询查看粮库各个仓房的存粮情况、业务发生情况和粮情情况。系统以矢量图SVG技术,有系统自动画出库点平面图,并根据实际数据进行计算,分别标注出各个仓房的存粮存量等信息。在库点平面图中可按仓房查询相关业务单据等信息。

4.3 统计分析

汇总市粮食局下辖的各个库点的业务数据,通过平台对业务数据进行处理、清洗、分析,利用图形、表格等方式,综合展示全市粮食情况,为领导决策提供支持。

4.4 粮情检测分析

系统以三维图形的方式,展现各仓内测温点的分布及对应粮温等信息,如图2所示。

图2 仓内温度三维展示图

Fig.2 3D display graph of temperature in storehouse

4.5 业务单据查询

对各个库点上报上来的原始业务单据进行综合查询,多维度了解粮库业务执行情况,对各库点阶段时间内发生的出入库业务单据能够第一时间掌握,为统计分析、决策支持提供数据支持。

4.6 视频监控

查看各库点的实时视频信息。并能够对提供接口的视频摄像头进行上、下、左、右旋转,焦点、焦距、光圈等相关控制。查看的视频监控仅能查看当前机构或是其下辖库点的视频信息。用户可在库点平面图中查看,各个摄像头的具体位置,同时可以查看各摄像头的实时视频。

5 结论(Conclusion)

粮库远程监管平台系统能够采集数字粮库系统的业务数据,传输并保存到监管平台的数据库中,还具有查询地理地图、个性化首页、统计分析、粮情监测分析、业务单据索引以及视频监控等功能,能够对库点的粮食收购、销售、保管等主要业务的全过程进行监管。

参考文献(References)

[1] 郝玉龙.JavaEE编程技术[M].北京:北京交通大学出版社,2013.

[2] (美)霍斯特曼,科内尔.周立新,等,译.Java核心技术卷1基础知

识(原书第9版)[M].北京:机械工业出版社,2014.

[3] (荷)帕派佐格罗.WEB服务:原理和技术[M].北京:机械工业出

版社,2009.

[4] 邓子云.Java Web轻量级开发全体验[M].北京:电子工业出版

社,2012.

作者简介:

俞琳琳(1980-),女,本科,助教.研究领域:软件工程,数据

挖掘.