1. 研究背景与意义
长江中下游地区是我国人口分布比较集中的地区,千百年来孕育了长江中下游文明,是我国社会经济发展的重要地区,汇聚了我国的主要湖泊群,这些湖泊为这一地区的社会经济文化发展提供了基础保障 [1] 。鄱阳湖是我国最大的淡水湖泊,深入了解湖区水生植物情况对建设“秀美江西”的中国样版,保护鄱阳湖“一湖清水”具有重要的意义。因此,加强鄱阳湖水生态环境监测对维系相关区域和国家生态安全具有重要作用 [2] [3] 。为切实做好此项工作,江西省水资源管理中心实验室一直对其进行监测、分析等科学研究,监测项目涵盖水文、气象、水体理化、浮游动植物、藻类生物及沉积物等指标,为最大程度的发挥监测数据作用,将仪器设备、人员、试剂、业务流程、监测数据、文件材料等内容整合起来,采用SSM框架建设鄱阳湖水生态环境监测数据管理系统,便于相关研究人员及时了解检测流程、检测数据,掌握鄱阳湖水生态环境的监测情况。实现采样试验过程及监测数据的规范化及精细化管理。提升数据利用效率 [4] 。同时,鄱阳湖水生态环境监测数据管理系统作为江西省水资源管理信息系统的组成部分,进一步完善我省水资源管理系统的功能,提高我省水资源监控管理能力 [5] 。
2. 数据及业务需求分析
2.1. 监测数据需求
鄱阳湖水生态环境监测过程涉及的数据主要包括:实验室仪器信息、人员信息、试剂信息、器皿信息、监测站点信息、采样信息、样品检测数据等。
1) 监测指标分析
监测数据是通过人工下湖采样、实验室个样检测、每个数据进行分析整理来获取,将检测数据录入鄱阳湖水生态环境监测数据管理系统,实现监测数据共享。数据主要包括:总大肠菌群、硫酸盐、氯化物、铜、铅、锌、镉、总α放射性、总β放射性、BOD、石油类、DNA表达量、RNA检测、藻细胞数目、Zeta电位、叶绿素、硅藻生物量、蛋白质含量等。本系统的静态数据包含系统用户组织机构、用户信息、用户权限信息等初始设置后变化不大的数据,动态数据包含实验室仪器、试剂、监测数据等。详细监测指标如表1所示。
2) 监测频次要求
数据增加主要体现在动态数据的增加。取样时间主要是6次,分别为2月、4月、6月、8月、10月及12月,根据情况在温度较高和丰水期间增加采样频率,增加7月和9月份2次采样,全年最多8次采样。常规室内检测指标10项,常规现场检测指标14项,平水期和枯水期(9月~次年4月):主要监测25个常规监测点,丰水期(6月~8月)监测43个点来计算检测数据量和评价数据量。
2.2. 业务需求
经调研江西省水资源管理中心实验室对鄱阳湖水生态环境监测业务过程中的实际需要,鄱阳湖水生态环境监测数据管理系统的整体业务需求主要包括:获取监测数据及管理实验室资源两个方面的内容,这两大板块的UML业务序列图如图1和图2所示。
3. 系统功能设计与实现
3.1. 总体架构
采用多层应用程序定义的模型,将本系统应用程序提供的服务划分为业务外观层、业务规则层、业务实体层、数据访问层四个抽象层,如图3所示。
业务外观层:本系统是一个提供给内部检测人员专用的,且具有严格检测业务逻辑的管理系统。因此,需构建一个人机交互、符合操作逻辑、界面美观、操作简便,同时用户可以方便地以Web浏览器的方式访问的监测数据管理系统。
业务规则层:系统中实现各项业务操作制定的规则。根据制定的规则进行逻辑设计,通过编码程序在系统中实现各业务层的操作。完成委托样品检测工作,委托样品项目的验证,委托单状态维护等功能。
业务实体层:主要负责处理系统业务数据的表现形式,方便各层间传递数据信息。业务实体层的数据是应用程序的基础,根据需求分析结果,本系统的实体层主要包括站点信息、监测项目、常规监测任务、委托任务、临时任务等。

Table 1. Water ecological environment and meteorological monitoring indicators of Poyang Lake
表1. 鄱阳湖水生态环境及气象监测指标
数据访问层:执行从数据库获取数据或向数据库发送数据的功能,通过MyBaits框架,操作数据库中的数据,为系统其它层提供数据服务。
3.2. 技术介绍
1) Spring
Spring是一个开源的、轻量级的框架,它具有轻量、控制反转、面向切面、容器、框架、MVC等特征 [6] ,方便用户高效的创建性能好、复用率高的代码,使得JavaWeb应用开发更为简单,使用广泛 [7] 。
2) SpringMVC
Spring MVC是Spring产品组合的一部分,具有Spring所有的特点,例如:容器、松耦合等。Spring MVC框架为JavaWeb应用的开发提供全面支撑 [8] 。
3) MyBatis
Mabatis是优秀的持久层框架,分为接口层、数据处理层和基础支撑层。支持基本的SQL査询,存储过程和高级映射等功能,除去了JDBC手工配置等操作 [9] 。MyBatis通过xml或注解用于配置和原始映射的方式,将接口和Java的Pojos映射成数据库中的记录 [10] 。

Figure 1. Diagram of obtain monitoring data sequence
图1. 获取监测数据业务序列图

Figure 2. Diagram of manage lab resources sequence
图2. 管理实验室资源业务序列图
3.3. 功能设计与实现
结合鄱阳湖水生态环境监测业务过程中的实际情况,本系统的整体功能分为检测主流程管理、实验室资源管理、系统管理三大部分,实现以水资源实验室为核心的全方位管理。具体系统功能及系统首页界面如图4、图5所示。

Figure 5. Diagram of system homepage interface
图5. 系统首页界面图
3.3.1. 检测主流程管理
1) 基础静态数据管理
基础静态数据管理主要包括对气象数据、采样点、采样计划、样品类型、测试项目、测试模板、其他数据信息的查询和编辑。
2) 测试方法标准管理
在采样检测及分析过程中涉及的有关方法、标准等统一录入该模块,便于业务人员查询搜索,提高工作质量和效率。该模块主要功能有:测试方法管理、测试项目管理、测试模板管理、国家标准等。测试方法管理的功能界面如图6所示。
3) 检验业务流程管理
根据采样检测流程,确定检测流程中的关键环节,通过这些环节确定检测业务流程管理的功能包括:按单号录入、任务下达、检测数据统计、任务查询、任务标记、委托受理等。
3.3.2. 实验室资源管理
1) 人员管理
人员管理主要包括人员的组织架构信息及个人信息。组织架构信息主要为所属单位、部门及岗位等,个人信息则是人员基本信息及技术档案,可查看每位用户在检测工作中涉及的培训经历、岗位考核等信息。
2) 仪器设备管理
仪器设备管理包括:仪器分类管理、仪器设备预约管理、仪器设备台账、仪器验收管理、仪器检定管理、仪器维修管理、仪器报废停用申请、仪器维护保养管理。仪器设备台账界面如图7所示。
3) 材料管理
检测材料主要分为采样容器、化学试剂、标准物质三大类。材料管理是针对这些物料进行物料库存管理、物料采购申请、物料类型管理、供应商管理、储存位置管理。
4) 知识文档管理
知识文档是指在检测分析工作中涉及的各类文件、资质材料等。主要功能包括:文档综合管理、文档查看、文档归类管理。
5) 客户管理
客户管理包括管理客户名称、地址、联系方式等信息,便于维系客户关系。
3.3.3. 系统管理
该功能模块包括主菜单设置、用户登录注销记录、角色权限管理、工作流管理、报表管理、测试页、各类权限设置、相关参数设置、日志管理等功能。其中,权限设置功能实现对不同层级、不同部门、不同人员进行

Figure 6. Diagram of test project management interface
图6. 测试方法管理界面图

Figure 7. Diagram of instrument and equipment account interface
图7. 仪器设备台账界面图
权限分配设置。不同的用户可以具备多重角色,不同角色可按照工作岗位、业务领域等进行菜单功能的分配。个人日志管理可记录每位用户的登录日志及操作轨迹。
4. 结束语
本文以鄱阳湖为例,采用信息化技术对鄱阳湖水生态环境监测业务、数据及实验室资源建立了基于SSM框架的监测数据管理系统。利用SSM框架构建的系统在性能上、代码重复率等方面比传统的SSH框架有了明显的改进,在功能上也保证了数据的一致性和安全性。用户操作简单、访问方便,大大提高了管理效率,实现了人工下湖采样、实验室个样监测、每个数据获取分析全过程的展示与管理,极大程度的发挥了监测数据的作用,使检测及数据管理工作更智能化、规范化。目前,该系统已在江西省水资源管理中心实验室开展应用,有关业务人员认为该系统的使用不仅有助于对试验流程的科学把控,还使鄱阳湖水生态环境监测数据受到了严格的质量控制,保证了监测数据的可靠性和利用率,进一步提高了鄱阳湖水生态环境监测分析质量。系统的建设将有助于鄱阳湖水环境的改善,提高鄱阳湖的生态环境治理能力,有力配合鄱阳湖环境治理工作,在保护鄱阳湖水生态环境上发挥了良好效益。
本系统的运行虽然取得了阶段性的成果,但是仍有一些问题需要进一步研究与完善。后续应加强业务人员和研发人员的沟通交流,不断完善系统功能及数据库,更好地发挥系统功能。此外,以本系统为切入点,建立一套通用的水资源监测数据管理系统,可推广应用于其他研究区域的水资源监测及管理工作,为实现最严格水资源管理制度提供技术支撑。