曾劲涛,斯恩昊,龙满生,付 青
基于Spring Boot框架的井冈蜜柚管理系统设计与实现
*曾劲涛1,2,斯恩昊1,龙满生1,2,付 青1,2
(1. 井冈山大学电子与信息工程学院,江西,吉安 343009;2.江西省农作物生长物联网技术工程实验室,江西,吉安 343009)
井冈蜜柚产业是吉安市六大富民产业之首和扶贫攻坚的首选产业。目前,该产业在生产阶段仍采用粗放型管理模式,为向精细化管理模式转型,急需建立信息化管理平台作为技术支撑。开发了一个基于Web的井冈蜜柚管理系统,实现了对果树的样区和样地管理、基础信息管理、健康信息管理和统计分析等核心功能。该系统采用了前后端分离的开发模式,前端和后端分别采用了主流的Vue.js框架和Spring Boot框架,持久层采用了MyBatis框架,数据库采用了MySQL。该系统具有较好的可操作性、安全性、可维护性和扩展性,已部署于腾讯云并在企业中测试使用。
井冈蜜柚管理;Spring Boot;Vue.js; MyBatis;B/S结构
井冈蜜柚是吉安市生产栽培的优质蜜柚果品的统称,以“井冈”作为品牌,以选育的桃溪蜜柚、金沙柚、金兰柚等 3个优良品系作为主导品种[1]。近几年来,在国家、省有关部门的大力支持下,吉安市井冈蜜柚产业得到了较快的发展,已被列为吉安市六大富民产业之首和扶贫攻坚的首选产业。据统计,2018 年全市井冈蜜柚总面积2.67万公顷,投产面积3333.33公顷,总产量4.5万吨[2]。目前该产业在生产阶段仍采用粗放型管理模式,对于大面积果园,管理主要凭经验,缺少果树的个性化数据,较难实现对果树的个性化逐株管理,对蜜柚的质量和产量会带来不利影响。针对井冈蜜柚果业由粗放型管理模式向精细化管理模式转型,有必要建立一个信息管理平台,以支撑果树个性化管理的实施。
目前已有不少基于各种技术开发的果园管理系统或平台。刘宇[3]基于ASP.NET开发了一个果园业务信息管理系统。苟喻[4]采用了VB为开发语言,以ArcGIS Engine为二次开发平台,结合ORACLE数据库开发了一套基于ArcGIS Engine的柑橘果园管理系统。董希玲[5]利用ASP.Net2.0和SQL Server 2005数据库,开发了一个苹果果园信息管理系统。曲飞宇[6]采用了.NET开发平台和SQL Server 2014数据库开发了一套果园管理系统。现有的系统仍存在一些问题。VB开发环境的许多功能是通过调用已集成的Windows模块或 Dll实现的,这些模块无法二次编辑,因而对Windows系统的底层操作极其不便。而.NET框架对跨平台的支持较差。ASP.NET通常采用WebForm框架,页面打开速度较慢,而且不易测试和维护。Spring Boot框架[7]是近年来逐渐流行的一种开发框架,具有可快速构建项目、可对主流开发框架的无配置集成、可提供运行时的应用监控、开发和部署效率高、可与云计算天然集成等优点。目前Spring Boot框架技术已较广泛地应用于Web系统开发,例如教代会提案系统[8]、人事信息发布系统[9]、阅读网站的设计[10]和食堂订单管理系统[11]等。将Spring Boot框架技术用于开发果园管理系统的工作仍较少。
本系统开发采用了Spring Boot框架,以简化新Spring应用的初始搭建以及开发过程。该框架可创建独立的Spring应用程序,内嵌Tomcat和Jetty等Servlet容器,提供自动配置的Starter项目对象模型以简化配置,可自动配置Spring和第三方库,提供指标衡量、健康检查和外部化配置等产品级特性,不产生多余的代码并且无需XML配置。本系统采用了主流的浏览器/服务器(B/S)结构,使用户能够通过浏览器访问,无需安装其他应用软件。系统的前台页面设计以简洁为核心,使用了渐进式框架Vue.js,具有双向数据绑定、组件化开发等优点。采用了MyBatis持久层框架,方便业务功能的扩展和系统的维护。
系统开发工具采用了IntelliJ IDEA和VSCode;Web服务器和数据库分别为Tomcat7.0和MySQL5.6;Spring Boot框架的版本为2.3.4;Vue.js的版本为2.0;MyBatis框架的版本为3.5.3;接口测试工具为Postman7.36.5;项目管理工具为先进的分布式版本控制系统Git2.28.0。
为实现井冈蜜柚果树的精细化管理,本系统设计了果树管理、样区管理和统计管理三大主功能模块和若干子功能模块,如图1所示。“疾病信息管理”子功能模块主要实现对果树疾病信息的管理,包括疾病信息的查询、添加、编辑和删除功能。“基础信息管理”子功能模块主要实现对果树基础信息的管理,包括果树信息的查询、添加、编辑和删除功能。“样区管理”子功能模块主要实现对不同地区或地点的果园信息的管理,包括样区信息的查询、添加、编辑和删除功能。“样地管理”子功能模块主要实现对某样区内各块样地信息的管理,包括样地信息的查询、添加、编辑和删除功能;“统计显示”子功能模块可按样区、样地、品种和果树年龄进行单个条件的统计或多个条件的联合统计,统计结果为各品种果树的数量。后期还将增加果树病害信息的统计。
图1 系统功能模块图
2.2.1 概念结构设计
针对系统数据库的概念结构设计,设计了样区实体、样地实体、果树信息实体和疾病信息实体4个实体,其实体关联图(E-R图)如图2所示。
图2 数据库 E-R 图
2.2.2 物理结构设计
依据数据库概念结构设计的E-R图,设计相应的物理结构,如图3所示。其中“患病”表由果树信息表和疾病信息表关联产生。
图3 数据库物理模型
果树管理功能模块包含基础信息管理和疾病信息管理2个子功能模块。基础信息管理模块实现了对果树基础信息的查询、添加、编辑和删除功能。果树查询功能既可通过果树编号进行精确查询,也可通过样区或样地进行模糊查询。果树添加功能可通过对话框输入果树所在样区和样地、品种、年龄等基础信息来完成。果树编辑功能可对果树除编号以外的其余基础信息进行修改。果树基础信息管理的操作界面如图4所示。疾病信息管理模块实现了对果树疾病信息的查询、添加、编辑和删除功能。疾病查询功能即可通过果树编号进行精确查询,也可通过疾病所属的胁迫类型或疾病创建时间进行模糊查询。疾病添加功能可通过对话框输入果树编号、疾病所属的胁迫类型、疾病程度和创建时间等属性信息来完成。疾病编辑功能可对疾病除创建时间以外的其余属性信息进行修改。果树疾病信息管理的操作界面如图5所示。
图4 果树基础信息界面
图5 果树疾病管理界面
样区管理功能模块包含样区编辑和样地编辑两个子功能模块。样区编辑功能模块实现了样区信息的查询、添加、编辑和删除。样区的查询方式有两种,一种是输入样区名称进行模糊查询,另一种是通过级联下拉框选择省、市、县或乡镇进行查询。样区添加功能可通过对话框输入样区名称、所在省、市、县或乡镇和详细地址等属性信息来完成;样区编辑功能可对样区除编号以外的其余属性信息进行修改。1个样区可按果树的品种或年龄划分为多块样地。样地添加功能可通过对话框输入样地名称、所属样区和样地详情等属性信息来完成。样地的查询、编辑和删除可通过操作界面的输入框或按钮来完成。样区管理的操作界面如图6所示。
图6 样区管理界面
统计功能是通过MyBatis框架,使用SQL对数据进行分类汇总,将分类汇总后的数据渲染到前端页面,MyBatis实现统计功能的核心代码如下:
统计功能可依据样地、样区、品种或果树年龄段4个条件进行单个条件统计或多个条件联合统计,默认显示所有样区各个品种果树的数量,如图7所示。仅输入样区时,会显示该样区内各个品种果树的数量。
图7 根据样地统计结果
Fig.7 Statistics by sample plot
该井冈蜜柚管理系统特色性地实现了对果树的逐株管理功能,为果树精细化管理提供了较好的信息技术支撑,有助于提升果树养护的质量和效率。同时,本系统设计采用了高度封装的Java代码和通用的业务逻辑,只需少量修改就可改造成通用的果园管理系统,因而具有良好的适应性和扩展性。目前该系统已部署于腾讯云服务器,并在吉安市井冈蜜柚生产企业中测试使用,受到了较好的评价。后期还将对该系统进行升级,例如在前端处理中使用响应式布局、使用第三方登录接口等,以进一步提升系统使用的便捷性和美观性;同时也考虑增加二维码功能模块,开发微信小程序实现果树二维码识别、果树疾病信息维护等核心功能。
[1] 赵晓东.吉安市井冈蜜柚产业发展现状与展望[J].现代园艺, 2016(7):39-40.
[2] 王芳飞. 吉安市井冈蜜柚产业发展现状及建议[J]. 现代农业科技, 2020(8):94-95.
[3] 刘宇.果园业务信息管理软件设计与实现[D].北京:北京工业大学,2016:1-5.
[4] 苟喻.基于ArcGIS Engine的重庆市柑橘果园管理系统的建立和研究[D].重庆:西南大学,2007:3-7.
[5]董希玲.苹果果园管理信息系统的构建[D].保定:河北农业大学,2010:6-7.
[6] 曲飞宇.“互联网+”背景下的果园管理系统的设计与实现[D].武汉:华中师范大学,2019:4-12.
[7] 张峰.应用 SpringBoot 改变 web 应用开发模式[J].科技创新与应用,2017(23):193-194.
[8] 颜治平.基于SpringBoot和Vue框架的教代会提案系统的设计与实现[J].科技创新与应用,2020(3):91-95.
[9] 张恒铭.基于SpringBoot+MyBatis框架的高校人事信息发布系统设计与实现[J].电脑知识与技术,2020,16(18):68-70.
[10] 邓惠俊.基于 Spring和MyBatis框架的阅读网站的设计与实现[J].信息与电脑,2021,33(4):97-99.
[11] 邱丹萍.应用SpringBoot的食堂订餐管理系统设计[J].福建电脑,2020,36(6):115-117.
DESIGN AND IMPLEMENTATION OF JINGGANG HONEY POMELO MANAGEMENT SYSTEM BASED ON SPRING BOOT FRAMEWORK
*ZENG Jin-tao1,2, SI En-hao1, LONG Man-sheng1,2, FU Qing1,2
(1. School of Electronics and Information Engineering, Jinggangshan University, Ji’an, Jiangxi 343009, China;2. Jiangxi Engineering Laboratory of IoT Technologies for Crop Growth, Ji’an, Jiangxi 343009, China)
Jinggang honey pomelo industry ranks first among the six industries for enriching the people in Ji’an City and is the best one for poverty alleviation. In this industry, extensive management is still adopted for care of the trees. In order to transform it into elaborating management, it is inevitable to set up an information management platform for this industry. In this paper, a set of management system was developed to increase quality and efficiency of caring the pomelo trees. Some key function modules including division of trees by sample area or sample plot, basic information management, disease management and statistic management were implemented. In this system, a development mode of separation of front-end and back-end was applied. Vue.js framework and Spring Boot framework were used in the front-end and in the back-end respectively, and Mybatis framework was used in the persistence layer, Mysql was used in database management. This system has been deployed in tencent cloud and been tested in a pomelo enterprise, and shows good operablity, safety, maintainability and expansibility.
Jinggang honey pomelo management; Spring Boot; Vue.js; MyBatis; B/S structure
1674-8085(2022)02-0082-06
TM311
A
10.3969/j.issn.1674-8085.2022.02.013
2021-08-28;
2021-10-05
江西省教育厅科技计划项目(GJJ190565)
*曾劲涛(1978-),男,江西吉安人,副教授,硕士,主要从事计算机应用研究(E-mail: rarehorse@163.com).