基于J2EE农产品电子商务平台的设计
洪 颖
(北京服装学院计算机信息中心,北京 100029)
摘要:针对当前电子商务模式的应用优势和农业信息化的需求,采用J2EE技术基于组件的方法设计和实现了农产品电子商务平台。由于采用了J2EE多层架构技术,该系统不但具有良好的可移植性和可扩展性,也具有较高的可靠性。
关键词 :农产品;电子商务;电子商务平台;J2EE;EJB;农业
中图分类号:TP311文献标识码:A文章编号:0439-8114(2015)01-0192-04
DOI:10.14088/j.cnki.issn0439-8114.2015.01.050
Design of Agricultural Products E-commerce Platform Based on J2EE
HONG Ying
(Computer Information Center, Beijing Institute of Fashion Technology, Beijing 100029, China)
Abstract: In the view of the advantages of applying e-commerce and the requirement of agricultural information, the agricultural products e-commerce platform was designed and implemented based on J2EE component technique. This system has a good portability, good scalability and high reliability due to using J2EE multi-layer architecture technique.
Key words: agricultural product; e-commerce; e-commerce platform; J2EE; EJB; agriculture
收稿日期:2014-01-10
基金项目:北京市青年英才项目(YETP1414);北京服装学院院内科研项目(2012A-17)
作者简介:洪 颖(1980-),男,安徽黄山人,讲师,硕士,主要从事信息检索和数据挖掘研究,(电话)18600209162(电子信箱)hongy1207@163.com。
中国是个传统农业大国,农业产业一直是中国的重要经济支柱,但是农业经济模式具有地域性强、季节性强、产品的标准化程度低、生产者分散等特点,传统的农户和经销商面对面的这种农产品销售模式显然难以满足农业发展要求,农民生产的农产品如果无法及时找到销售渠道,无疑会带来损失。随着互联网的发展,电子商务这种新型的商业运作模式迅速发展起来,它打破了时空的局限性,改变了传统的贸易模式,通过网络的方式实现消费者的购物、网上交易和在线电子支付以及各种商务活动[1]。如果将电子商务模式引入到农业行业中,构建农产品的电子商务平台将会有效推动农业产业化的步伐,促进农村经济发展。农产品电子商务平台能降低成本,提高效率,打破区域和时间的限制,实现农产品流通的规模化。
目前,在大型电子商务平台中,采用J2EE基于组件技术来开发具有较大的优势,能保证电子商务系统所需的高可用性、安全性、可靠性和可扩展性等特点,还能降低系统实现的复杂性。为此,使用J2EE技术来开发一个农产品电子商务平台,以期为农产品流通的规模化提供一定的保障。
1 相关技术介绍
1.1 J2EE技术
J2EE(Java 2 Platform Enterprise Edition)是SUN公司提出的使用Java技术构建多层次企业级应用的一系列标准和规范。其中所包含的各种组件、服务架构及技术层次均有共同的标准和规范,使各种依循这种标准和规范的不同平台之间具有了良好的兼容性,摆脱了过去企业级应用之间彼此无法兼容而导致的企业内部应用与外部应用难以互通的窘境[2]。
J2EE具有典型的四层结构[3],包括运行在客户端服务器上的客户层组件、运行在J2EE服务器上的表示层组件和业务逻辑层组件以及运行在EIS服务器上的企业信息系统(Enterprise information system)层软件。图1为J2EE多层应用模型体系结构。
客户层通常为浏览器或Applet等客户端实现的用户界面;表示层是一些Web组件,运行在J2EE服务器上,由Web容器运行,包括JSP、Servlet等;业务逻辑层由一些运行在J2EE服务器上的EJB组件组成,这些组件运行在EJB容器中,一个Bean从客户端接收数据、处理,然后把数据送到企业信息系统层存储起来。同样,一个Bean也可以从企业信息系统取出数据,发送到客户端程序;企业信息系统层主要处理企业其他一些系统软件和进行数据的存储。
J2EE平台能够更好地解决企业应用中的“信息共享”和“服务集成”两大技术问题[4]。系统具有安全性高、稳定性和可用性好、扩展性和伸缩性好以及良好的平台无关性等优势。
1.2 MVC设计模式
MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,该模式把应用程序分为三个核心模块:模型(Model)、视图(View)和控制器(Controller)。各个模块分别担负着不同的任务[5]。
控制器负责视图和模型之间的交互,它主要负责两方面的动作,把用户的请求分发到相应的模型和将模型的改变及时反映到视图上[6,7]。视图是应用程序和用户之间的接口,它负责将应用显现给用户和显示模型的状态;模型是应用程序的主体核心部分,它封装了应用程序的数据结构和事务逻辑。
1.3 EJB组件及其类型
EJB(Enterprise Java Beans)是J2EE架构中服务器端组件模型,主要用于开发和部署多层结构、分布式的应用程序[8]。EJB组件通常要运行在EJB容器中,它的优点在于封装性和可移植性,在具有相似业务逻辑功能的应用系统之间不需要修改代码重新编译,支持软件的复用,降低开发成本,应用系统可以在一个支持EJB的环境中开发,完成后可以部署在其他环境中。
EJB从功能上可分为会话Bean(Session Bean)和实体Bean(Entity Bean)。
1)会话Bean(Session Bean)。Session Bean实现了运行于服务器上的业务逻辑,用户通过调用Session Bean来访问服务器,Session Bean在J2EE服务器上代表一个用户,它通过在服务器端运行业务逻辑为用户完成特定任务。
Session Bean有两种应用模式:无状态Session Bean(Stateless)和有状态Session Bean(Stateful)[9]。无状态Session Bean在一个方法调用的过程中能维持调用用户的状态,一旦方法执行完,状态就不被保持,但无状态Session Bean的Bean实现类可以被多个客户端共享使用。有状态Session Bean可以使用不同的Bean实现类一对一地维持某个调用用户的状态,每一个并发的用户都有一个对应的有状态Session Bean。
2)实体Bean(Entity Bean)。实体Bean代表数据库或另外一个企业应用系统中的数据对象,如数据库中的一条记录[10]。实体Bean的属性代表业务过程中处理的永久性数据,是持久性的,运行共享访问。会话Bean的状态不依赖于应用服务器而存在,是底层数据库记录的映像,和数据库记录保持同步,所以如果应用服务器停止运行,实体Bean的状态还保存在数据库中。
2 系统设计
2.1 系统功能模块的设计分析
农产品电子商务平台系统包括前台和后台部分,其中前台有以下功能模块。
1)会员模块。用户首次使用农产品电子商务平台需要进行会员注册,注册成功才能登陆平台购买商品,也可以享受会员商品特价。在会员模块中用户还可以进行修改注册资料、兑换积分等操作。
2)购物车模块。用户进入平台选购农产品时,可以使用购物车。购物车具有查看购物车商品、修改购物车商品、确认订单信息(包括查看商品数量、价格和总金额等)以及提交订单等功能。
3)订单管理模块。该模块主要提供订单信息,包括订单编号、金额、下单日期、订单状态等,用户可以查看和修改订单信息。
4)商品搜索模块。该模块可以让用户按日期、商品名称、类型等方式搜索商品,快速找到需要的农产品。
农产品电子商务平台的后台包括以下功能模块。
1)商品类别管理模块。主要实现对商品类别进行增加、修改和删除等操作,管理员还可以通过分类管理实现商品的分类并可以增加、修改和删除商品信息。该模块还支持下载Excel模板,批量导入商品信息。
2)商品管理模块。该模块主要实现管理员进行增加、修改和删除商品的操作。支持下载Excel模板,批量导入商品信息。
3)订单管理模块。系统管理员可以对订单进行管理、统计和打印,既可以按照会员信息进行统计,也可以按照商品信息进行统计等。
4)会员管理模块。此模块实现系统管理员对注册会员的管理功能,包括会员的查看、删除、设置会员权限、设置会员商品折扣和会员积分管理等。
5)管理员用户管理模块。该模块提供对系统管理员用户的管理功能,包括增加、删除、修改管理员用户等操作。
基于J2EE的农产品电子商务平台系统功能模块如图2所示。
2.2 数据库设计
数据库设计在系统开发过程中是一项重要的工作。一个系统的好坏很大程度上依赖于数据库设计的质量。为实现对数据的系统管理,保证数据的整体性、完整性和共享性,系统的开发采用了SQL Server 2005数据库。Microsoft SQL Server 2005是一个全面的数据库平台,提供了企业级的数据管理,具有连接速度快、支持用户多和安全性好等优点[11]。电子商务平台设计的主要数据表包括农产品信息表、农产品类别信息表、管理员表、用户信息表、订单信息表等,系统数据库ER模型如图3。
2.3 系统架构
依据J2EE的典型架构和B/C电子商务平台的特点,农产品电子商务平台采用4层架构,分别是客户层、表示层、业务逻辑层和企业信息系统层(图4)。
客户层是用户通过浏览器对农产品电子商务平台进行访问的网络终端,系统用户分