【摘要】农业是我国国民经济的重要组成部分,随着信息化的普及,4G网络、光纤以及5G网络也日益完善,农业信息化的发展成为了必然。同时,由于本年疫情原因,导致农作物积压销售,甚至腐烂造成不必要的浪费,为了减少类似情况的发生,是设计和开发本系统的目的和意义。
交易平台将以Java语言作为主要语言进行开发,将JSP作为交易平台的前台设计技术,将B/S架构作为交易平台的逻辑架构,使用Eclipse工具作为Java语言的编写工具,通过使用MySQL及Navicat开发和管理本平台的数据库。
关键词:农产品交易;B/S架构;Java
目录
1 绪论
1.1 课题背景
1.2 国内外研究现状
1.2.1 国内研究现状
1.2.2 国外研究现状
1.3 课题内容
2 相关技术介绍
2.1 技术类介绍
2.1.1 Java语言介绍
2.1.2 JSP技术介绍
2.1.3 MySQL介绍
2.1.4 SSM介绍
2.1.5 黑盒测试技术介绍
2.2 工具类介绍
2.2.1 Navicat Premium工具介绍
2.2.2 Eclipse工具介绍
2.3 本章小结
3 需求分析
3.1 业务流程分析
3.2 功能性需求分析
3.2.1 管理者
3.2.2 消费者
3.2.3 经营者
3.3 非功能性需求分析
4 系统设计
4.1 平台设计要点
4.2 平台架构设计
4.3 平台总体设计
4.3.1 登录注册时序图
4.3.2 增删改个人信息时序图
4.3.3 消费者购物时序图
4.4 数据库设计
4.4.1 实体-联系图
4.4.2 数据表设计
5 系统实现
5.1 登录注册
5.2 个人信息
5.3 购物车
5.4 商品查看
5.5 商品订单
6 系统测试
6.1 测试环境
6.2 测试方法
6.3 功能测试
7 总结
参考文献
致谢
1 绪论
1.1 课题背景
随着经济全球化的到来,社会的发展,科技的进步,信息化浪潮已经推进到生活中的各个角落,也成为了世界各个国家推动其经济发展的重要手段,其中,农业信息化就是一部份。互联网渠道的产生和完善,能够有效的拓宽农产品营销渠道。
我国是一个农业大国,农业是我国的基础产业,是国民经济的重要根基,农产品资源丰富,品种繁多,分布广泛,但也因为这些特点,使得很多农户和经营者在农产品生产及销售上存在着信息不对称等诸多问题,农产品批发市场严重不适应新时代社会经济发展需要的滞后性状态。应建立完善的营销体系来提高流通效率。现阶段,
网络科技越来越发达,许多人的购物观念逐渐从线下购买转移到了线上购买,农产品也是这样,不能只满足于线下销售,而放弃线上销售这一广大的平台,如果没有一个合适的交易平台,经营者很难在线上打开销路,而消费者也很难在线上找到合适的购买农产品的平台。
由于今年的疫情爆发,使得许多农产品滞销、甚至腐烂在农田里,农产品交易平台能够提供额外的销售渠道,避免了农产品压仓、滞销、腐烂造成不必要的浪费。最终,通过农产品交易平台,消费者可以直接在平台上购买经营者上架的农产品,节省了线下挑选的时间,提高了效率;消费者可以迅速地了解该商铺有什么种类的商品,便于挑选心仪的农产品;对于经营农副产品行业的人,他们对原料的需求很大,可以随时随地从该平台挑选需求的资源,扩大了选择的空间;对于经营者,可以直接将要售卖的农产品上架到平台上,省去了直接运送到市场的时间。
1.2 国内外研究现状
1.2.1 国内研究现状
国内现阶段对农业信息化发展有很多研究,同时也研发了很多信息化系统,但是我国农业发展网络基础相对薄弱,网络覆盖面相对较少,农场主的素质相对较低。
受疫情影响,国内多地的农产品无法运出,农产品批发市场面临全面断货的风险。国内有很多地区的农产品销售点存在运输困难。北京昌平目前大约有上万斤草莓滞销。部分农场在收获日收获大量的农产品后,造成了仓库囤积,又由于疫情影响到了货物的配送,导致滞销。
1.2.2 国外研究现状
现阶段,美国已有2000多家农场,在疫情的影响下宣告破产。
现阶段,弗罗里达州有很多农场都有农产品堆积导致腐烂的现象发生,很多农场主将已腐烂的农产品销毁。
2010年至2017年,由于“走中国”项目和中波“16+1”平台的推动,中波两国农产品贸易大幅增长。
1.3 课题内容
整个农产品交易平台包括两个部分,一个是供PC端客户使用的网页端,一个是供管理员使用的后台管理网页端,在设计之前就需要对其需要做的系统进行确认,并且还需要对其系统的背景以及当前所存在的问题进行调查。在对整个系统进行确定之后,还需要对整个系统的开发以及需求进行分析,在本次论文之中所设计的线上教学系统而言,所使用的编程工具就是JAVA技术,然后使用数据库对其平台进行搭建以及开发,然后再使用该技术对其进行分析。如果确定好整个系统之后,首先就需要对其整个系统进行角色的划分,对于本次设计的线上教学系统而言,主要就可以划分为管理员以及用户这两个角色。主要功能有:
(1)登录注册方面,消费者、经营者、管理者登录到该平台,消费者可以注册农产品交易平台账号,而经营者、管理者账号是管理者通过农产品交易平台的后台创建的。
(2)个人信息方面,消费者、经营者、管理者可以查看个人信息,以及对个人详细信息的增删改查。
(3)订单方面,消费者可以查看订单,创建订单,新建自己的收货地址,取消下达的订单,以及申请退款;经营者可以修改订单,删除订单,审核退款订单,货物发送。
(4)商城系统方面,消费者能够查看、修改购物车内的农产品,查看、购买农产品,给购买过的农产品评价,经营者可以上架、下架农产品,编辑农产品信息。
(5)管理系统方面,管理者可以管理本平台经营者、消费者、管理者的身份信息。
2 相关技术介绍
主要介绍了开发农产品交易平台所用到的语言,Java语言;所用到的技术为Java+JSP结合生成的Web页面;以及使用Eclipse来编写Java;使用MySQL+Navicat来开发和管理本平台的数据库。
2.1 技术类介绍
2.1.1 Java语言介绍
Java在本平台中作为主要的编程语言使用,它是一门面向对象的程序设计语言。Java编程语言是以常规编程语言作为基础,进行重新开发形成的编程语言,能够依据多个不同电子计算机的系统内容,展开对多个平台的运用。
2.1.2 JSP技术介绍
客户端首先对JSP页面进行请求,将待访问的.jsp文件转译为对应的.java文件,产生的源文件进行编译变成.class文件,执行完之后把响应传给客户端。如果当JSP获取到相关请求的时候,如果其引擎收到请求,就需要设计最新的JSP,这时候就需要去找出JSP的文档,然后还要检查其文档上是否出现被编译。如果该文件已经被编译,那么这时就会对其Servlet进行重新编译,然后再将其请求直接交给该引擎进行编译,程序中所使用的JAVA程序代码作用主要是对数据库进行增删改查,对Web网页进行定位,从而达到网站编辑的目的。用JSP开发出来的网站本身就会和JAVA客户端是比较相似的,这些都是需要在其服务器内部编写代码进行实现的,并且在其完成之后JSP就需要将其反馈到网页之中,而对于JAVA的程序而言,就是将其结果返回到独立的界面之中。
2.1.3 MySQL介绍
MySQL功能稳定,性能卓越,且开源。MySQL属于关系型数据库,能够将数据保存在不同的表中,降低服务器的负载压力,使数据存储更轻便、灵活且易于操作。对于MySQL数据库而言,该数据库就是本次设计开发的过程之中非常重要的一个部分。并且对于当前的WEB与当前的MySQL使用之中而言,其管理系统具有很大的优势,我们一般都利用MySQL对其数据进行处理,然后再将这些数据进行保存,使用该数据库就会让整个系统的设计更加的灵活多变,并且还可以有效的使得整个系统能够更快的反应。而对于SQL语言来说,所以该数据库本身就有着很高的兼容能力。对其数据库的操作来说,主要就包括对其数据库进行增加、删除、修改等相关功能。
MySQL在进行数据处理时能够快速的响应数据变化,其使用起来简单,其可以针对不同的系统进行使用,在不同的平台之下,虽然有着一定的区别,但是在大致的情况下,其数据库本身差别并不是很大。对于本次设计之中,最后面运行代码的时候出现了被计算机积极拒绝的错误而导致无法连接,这就是由于在相应计算机上的数据库没有启动,导致程序无法运行,所以在运行程序之前还需要对其服务进行启动,然后其相应的客户端就可以连接到数据库之中,对于客户端而言,就可以直接使用命令或者是一定的图像界面登录到当前的数据库之中。
2.1.4 SSM介绍
SSM主要包括Spring、SpringMVC、mybatis,通过view层、service层、dao层,降低平台的耦合度。
2.1.5 黑盒测试技术介绍
黑盒测试,大体来说,就是模仿使用本平台的用户,在完全不了解代码的情况下使用本平台的功能,得到测试结果。软件测试也是一个较大的工程,应用最普遍测试两种,通常情况下,黑盒测试中应用的是划分方法,白盒中应用的是覆盖法,测试重要的一点就是将测试结果、过程以及反馈都记录清楚,在下次同样出现问题时,可直接知道系统出现的问题类型,便于系统开发人员的维护。测试是一长久的工作,需要进行反复的测试和修改,一直到测试结果符合测试标准,进而放心系统投入真正的使用。
2.2 工具类介绍
2.2.1 Navicat Premium工具介绍
Navicat Premium是一套数据库管理工具,Premium版是Navicat的高级版本,聚其他各版本的Navicat的功能为一体。
2.2.2 Eclipse工具介绍
选用Eclipse的原因,首先是因为Eclipse是一个开源的工具,同时Eclipse是一个扩展性极高的Java开发软件,还支持很多的插件,时Eclipse在编写Java时具有很高的灵活性和简便性。
2.3 本章小结
本章主要介绍了选取Java语言、选取JSP技术开发本平台的原因,还有使用MySQL与Nvicat管理开发数据库的原因,以及使用Eclipse作为开发工具的原因,最后是对本平台的测试方法‘黑盒测试’的介绍与黑盒测试的功能测试方法。此章能够使读者更好地理解开发本平台所使用的技术方法以及开发工具。本模块的安全测试主要是让测试人员通过非法的手段和方式入侵系统,观察系统是否能够被入侵,以及查看的系统的安全性。系统登陆安全测试。用户必须通过注册被授权之后,输入正确的账号密码的情况下登录系统,密码与用户名必须可以互相对应,输入错误三次将锁定账户。支付安全性。登录进入系统后,用户在支付过程中,保障支付密码的安全性以及保证支付速度的快捷性。