基于SSH的特色农产品信息网络服务平台设计与实现

2015-08-02 03:55郑建华邱振国
中国管理信息化 2015年5期
关键词:框架农产品特色

郑建华,朱 蓉,邱振国

(仲恺农业工程学院 信息科学与技术学院,广州 510225)

基于SSH的特色农产品信息网络服务平台设计与实现

郑建华,朱 蓉,邱振国

(仲恺农业工程学院 信息科学与技术学院,广州 510225)

农业信息化实现是现代农业的重要手段,特色农产品信息网络服务平台(SAPISP:Special Agriculture Product Information Service Platform)是推进罗定市农业信息化进程的重要工具。本文详细论述了SAPISP的核心业务,并基于核心业务给出此平台的功能需求及用例图。在实现层面,本文采用轻量级J2EE开源框架SSH框架,设计了基于SSH的4层架构,并予以详细描述。目前平台运行稳定,该设计较好地满足了SAPISP运营需求。

农业信息化;SSH;功能需求;MVC

当前信息化水平已成为衡量一个国家现代化水平和综合国力的重要标志,农业是国民经济的基础,而农业的信息化是国家信息化的重要内容。农业信息化就是培育、发展以计算机为主的,智能化工具为代表的,新的生产力并使之应用于农业领域的过程[1]。农业信息化是农业全过程的信息化,是在农业领域全面地发展和应用现代信息技术,使之渗透到农业生产、消费、市场等各个具体环节,加速对传统农业改造,大幅度地提高农业生产效率和农业生产力水平,促进农业持续、稳定、高效发展的过程[2]。为推进罗定市的农业信息化进程,本服务平台以罗定市优质稻、肉桂等具有发展潜力和增长后劲的优势农产品行业为对象,以电子信息技术为手段,以网络为平台,以知识管理为核心,有效整合各类社会资源,构架基于WEB方式服务于中小微企业的网络服务平台,为不同用户提供特色农产品生产技术、产品流通、农资配送、生态旅游、产业规划指引、科技培训等一系列在生产、加工、流通、销售各产业链环节的综合信息服务。

1 服务平台核心业务

本项目建设的面向罗定市的特色农产品信息网络服务平台,主要实现4种类型业务服务,满足优质稻、肉桂等特色农产品生产、加工、流通、销售等各个环节的需求,各业务具体要求内容分析如下:

1.1 科技培训服务业务

为实现科技培训业务,要求系统建立培训师资库和培训资料库,依托各大专院校和企事业单位的培训力量,可开展特色农产品安全与标准化方面的各类培训,有集中培训、专题培训、分散培训,各农户、基地或企业可以选择不同的形式参加培训。

1.2 特色农产品生产服务业务

农产品生产服务业务是指生产技术各方面的专家给生产加工企业和农户提供技术服务指导,开通专家在线技术咨询,直接为用户提供生产技术支持,为用户提供生产加工过程中的技术解决方案。

1.3 特色农产品流通服务业务

特殊农产品流通服务业务是为生产者和消费者实现产销对接的一个渠道,可以实现有3种销售模式:①生产企业的直销模式。由生产企业建立企业直销点,在平台上公布产品介绍、联系方式、通过联系可实施对接销售;②专营、专卖模式。纳入特色农产品专营店、点、柜等实体店建立的销售网络,这些定点销售单位是经考核评定符合要求的“平台产品销售企业”,这些单位将实行统一标志、统一布局,便于消费者辩认,以保证安全消费;③电子商务的配送模式。主要是通过销售网络,为广大消费者提供便利快捷的订购服务,以电话、网上购物形式进行产品的选购。

1.4 特色农产品资讯生活

这部分主要是依托高校研究专家,开展行业信息情报分析和技术信息情报等工作,并建立特色农产品行业资讯服务,为优质稻、肉桂等特色农产品提供咨询展示,以及相关的旅游生活内容等资讯。

2 平台功能需求及系统用例图

基于以上4种核心业务需求,通过对平台需求的详细分析,按照功能的不同,我们将本平台划分为基础设置模块、系统权限管理子系统、生产服务子系统、科技培训子系统、产品流通子系统、资讯生活子系统6个模块,有些模块的数据之间存在联系制约的关系,其中系统权限子系统模块采用了RBCA权限管理模型[3],其他满足业务的各子系统部分都提供了支撑业务开展的类别管理、数据维护、查询的功能。

本平台的角色繁多,包括负责运营的超级管理员、农户、培训机构、农业技术人员、农场等,其中超级管理员需要涉及所有的业务功能和系统功能,因此本文用超级管理员的用例图展示了平台的需求功能模块,如图1所示。

3 平台架构设计

本平台采用MVC(模型一视图一控制)设计模式,将输入、处理、输出流程按照模型、视图、控制的方式进行分离,这样系统被分成模型层、视图层、控制层3个层。模型层进行业务流程状态的处理以及业务规则的制订,视图层代表用户交互界面,控制层则从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。同时要求平台管理有良好的扩展性,当需要添加或删除某些功能时,能够在不变动系统整体架构的情况下,能比较容易地引入新功能或者修正相应需要修改的功能[4]。

图1 超级管理员的用例图暨系统功能模块

鉴于J2EE经典的EJB架构存在比较多的缺陷,目前许多专家和开源组织试图开发出一些轻量级的、灵活的框架来替代EJB框架[5]。因此本平台使用Struts+Spring+Hibernate三大框架技术进行系统架构的设计及系统的实现。基于MVC设计模式的表示层框架Struts负责系统展示层的页面及数据处理;而基于IoC的业务逻辑层框架Spring则统筹对系统进行管理。数据持久化的管理操作是繁琐且不可缺少的,本系统采用的基于ORM的数据持久层框架Hibernate的ORM很好地为我们解决了90%的数据持久化问题,能使技术人员实现系统时在数据持久化方面的工作量少了很多,远离了复杂繁琐的数据库的CRUD操作的实现。

在实现过程中,本平台采用4层结构,主要分为页面显示层、展现层(也称为控制层)、逻辑层、持久化层,后3层架构关系如图2所示。

图2 系统整体架构

(1)页面显示层:即Jsp页面。此层负责系统数据的显示以及可以通过javascript、jQuery等前台开发技术,对用户在页面操作的数据请求进行第一次处理,主要是对不符合系统规则的数据进行处理,不符合的处理结果即刻反应给用户,加快了数据的处理速度,最后再将符合的处理结果发送到展现层即控制层。

(2)展现层(控制层):即Action层。此层负责接收用户从页面发送的需要访问的数据请求,然后通过调用逻辑控制层,将请求转发到此层,最后接收逻辑控制层的调用结果,再将结果显示到用户请求的目标页面。本平台采用Struts 2技术实现Web层的Action有3种选择:一种是裸类,不继承或实现任何类;另一种是实现com.opensymphony.xwork2.Action接口;再一种是继承com.opensymphony.xwork2.ActionSupport类,而这个类又实现了com.opensymphony.xwork2.Action接口。

本平台抽出了一个基本action类(继承ActionSupport),该类持有基本model类和基本service类,并重写了execute方法。

开发人员编写的action必须继承此基本action,并重写execute方法,再将model和service传入即可。如:

(3)逻辑层:即Service层。此层负责对Action层传来的数据请求进行第二次处理,不符合的处理结果返回到上一层,符合的处理结果通过逻辑条件控制调用数据持久化层,将请求转发到此层,然后接收数据持久化的调用结果,有时需要对调用结果进行再一次处理,最后将处理结果返回到Action层。此层是整个系统的控制中心,负责提供系统各个模块数据的管理,协调各个模块之间的运行,提供各个业务的逻辑控制及处理,负责系统运行的处理。本平台采用Spring的IOC容器来管理业务逻辑Bean,主要作用是初始化相关资源,提供事务保证。

在框架中,严格遵循面向接口编程的原则,所有的业务bean,都是接口先行,所以模块编写的时候,需要先写一个接口,然后写其实现类。如接口IAdminService,实现类AdminService。*Service主要处理业务逻辑分类,具体的业务逻辑处理类*Helper类。*Service通过该对应的model的actName属性来区分不同的动作和跳转逻辑。*Helper已经预定义好了最常用的6种活动,toAdd,Add,toModify,Modify,ShowList,Del。另外,这里也是与Dao层直接联系的地方。

(4)持久化层:采用Hibernate实现。框架做了对于基本CRUD的封装,所以一般情况下,如果模块没有特殊的要求,只是普通的增删改查,那么无须去写DAO操作。

在框架中,原则上每个模块需要实现一个【模块名DAO】这样的一个持久层类,继承自框架的BaseDao,自动获取相应的CRUD能力。这里主要是封装了Spring对Hibernate的封装,以及实现了一些基础的CRUD逻辑,其他的DAO继承该类将自动获取这些功能,只需要关注本模块需要的一些特别的持久化操作。

基于以上的轻量级J2EE架构是对各个常用的服务进行轻量的封装,它的一个最重要的目标就是松耦合,使得开发就像组装机器,轻盈简便,具有如下的优点:①开发过程简单化;②提高生产力;③可组装性强,有良好的扩展性;④有利于单元测试;⑤采用开源的SSH框架,费用低廉。

4 平台实现效果

目前平台运行稳定,其中前后台运行示意图如图3、图4所示。

图3 平台首页

图4 平台后台管理页面

5 结 语

好的设计模式和成熟的框架技术不仅可以降低开发成本提高开发效率,更重要的是能够大幅度提高软件开发的质量。基于SSH框架开发的特色农产品信息网络服务平台,具有高性能、高可扩展性和高安全性的特点,同时简化了系统的开发、管理和维护,提高了系统的开发效率,体现了SSH架构的优势。本文详细介绍了罗定市特色农产品信息网络服务平台的需求与实现过程,本平台经过试运行,取得了非常好的效果,达到了预期的设计目标。

[1]陈熙隆.国内外农业信息化文献综述[J].河北农业科学,2010,14(9):163-165.

[2]高万林,李桢,于丽娜,等.加快农业信息化建设促进农业现代化发展[J].农业现代化研究,2010,31(3):257-261.

[3]邵奇峰,韩玉民,郑秋生.一种混合授权的RBAC模型及其UML建模[J].武汉大学学报:理学版,2014,39(5):419-423.

[4]郑建华,陈尔晓.基于MVCA模式的多层WEB系统架构设计[J].电脑与电信,2012(7).

[5]孙卫琴.精通Struts:基于MVC的Java Web设计与开发[M].北京:电子工业出版社,2004.

10.3969/j.issn.1673-0194.2015.05.111

TP309.2

A

1673-0194(2015)05-0233-04

2014-12-22

广东省科技计划项目(2012B040500040)资助;广东省科技计划高新技术产业化项目(2012B010100048)资助。

郑建华(1977-),男,湖南嘉禾人,仲恺农业工程学院信息科学与技术学院讲师,博士,主要研究方向:系统架构设计,云计算,大数据处理与挖掘。

猜你喜欢
框架农产品特色
农产品网店遭“打假”敲诈 价值19.9元农产品竟被敲诈千元
框架
特色种植促增收
打通农产品出村“最先一公里”
广义框架的不相交性
各地农产品滞销卖难信息(二)
中医的特色
完美的特色党建
WTO框架下
一种基于OpenStack的云应用开发框架