基于Java实现农产品交易平台的设计与实现_kaic

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【摘要】农业是我国国民经济的重要组成部分,随着信息化的普及,4G网络、光纤以及5G网络也日益完善,农业信息化的发展成为了必然。同时,由于本年疫情原因,导致农作物积压销售,甚至腐烂造成不必要的浪费,为了减少类似情况的发生,是设计和开发本系统的目的和意义。交易平台将以Java语言作为主要语言进行开发,将JSP作为交易平台的前台设计技术,将B/S架构作为交易平台的逻辑架构,使用Eclipse工具作为Java语言的编写工具,通过使用MySQL及Navicat开发和管理本平台的数据库。

 【摘要】农业是我国国民经济的重要组成部分,随着信息化的普及,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作为开发工具的原因,最后是对本平台的测试方法‘黑盒测试’的介绍与黑盒测试的功能测试方法。此章能够使读者更好地理解开发本平台所使用的技术方法以及开发工具。本模块的安全测试主要是让测试人员通过非法的手段和方式入侵系统,观察系统是否能够被入侵,以及查看的系统的安全性。系统登陆安全测试。用户必须通过注册被授权之后,输入正确的账号密码的情况下登录系统,密码与用户名必须可以互相对应,输入错误三次将锁定账户。支付安全性。登录进入系统后,用户在支付过程中,保障支付密码的安全性以及保证支付速度的快捷性。

image.gif编辑

image.gif编辑


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
24天前
|
SQL 监控 数据可视化
完全开源!国内首个完全开源JAVA企业级低代码平台
JeeLowCode 是一款专为企业打造的 Java 企业级低代码开发平台,通过五大核心引擎(SQL、功能、模板、图表、切面)和四大服务体系(开发、设计、图表、模版),简化开发流程,降低技术门槛,提高研发效率。平台支持多端适配、国际化、事件绑定与动态交互等功能,广泛适用于 OA、ERP、IoT 等多种管理信息系统,帮助企业加速数字化转型。
|
19天前
|
人工智能 监控 数据可视化
Java智慧工地信息管理平台源码 智慧工地信息化解决方案SaaS源码 支持二次开发
智慧工地系统是依托物联网、互联网、AI、可视化建立的大数据管理平台,是一种全新的管理模式,能够实现劳务管理、安全施工、绿色施工的智能化和互联网化。围绕施工现场管理的人、机、料、法、环五大维度,以及施工过程管理的进度、质量、安全三大体系为基础应用,实现全面高效的工程管理需求,满足工地多角色、多视角的有效监管,实现工程建设管理的降本增效,为监管平台提供数据支撑。
33 3
|
1月前
|
SQL 监控 数据可视化
完全开源!国内首个完全开源JAVA企业级低代码平台
JeeLowCode 是一款专为企业打造的 Java 企业级低代码开发平台,通过五大核心引擎(SQL、功能、模板、图表、切面)和四大服务体系(开发、设计、图表、模版),简化开发流程,降低技术门槛,提高研发效率。平台支持多端适配、国际化、事件绑定与动态交互等功能,广泛适用于 OA、ERP、IoT 等多种管理信息系统,帮助企业加速数字化转型。
完全开源!国内首个完全开源JAVA企业级低代码平台
|
3月前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的农产品商城管理系统
基于Java+Springboot+Vue开发的农产品商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。 通过学习基于Java的农产品商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
99 5
基于Java+Springboot+Vue开发的农产品商城管理系统
|
4月前
|
SQL Java 关系型数据库
实时数仓 Hologres产品使用合集之如何安装和使用Java SDK
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
4月前
|
Java API 数据中心
百炼平台Java 集成API上传文档到数据中心并添加索引
本文主要演示阿里云百炼产品,如何通过API实现数据中心文档的上传和索引的添加。
112 3
|
4月前
|
消息中间件 Java Kafka
"Kafka快速上手:从环境搭建到Java Producer与Consumer实战,轻松掌握分布式流处理平台"
【8月更文挑战第10天】Apache Kafka作为分布式流处理平台的领头羊,凭借其高吞吐量、可扩展性和容错性,在大数据处理、实时日志收集及消息队列领域表现卓越。初学者需掌握Kafka基本概念与操作。Kafka的核心组件包括Producer(生产者)、Broker(服务器)和Consumer(消费者)。Producer发送消息到Topic,Broker负责存储与转发,Consumer则读取这些消息。首先确保已安装Java和Kafka,并启动服务。接着可通过命令行创建Topic,并使用提供的Java API实现Producer发送消息和Consumer读取消息的功能。
78 8
|
4月前
|
安全 Java
Java模拟生产者-消费者问题。生产者不断的往仓库中存放产品,消费者从仓库中消费产品。其中生产者和消费者都可以有若干个。在这里,生产者是一个线程,消费者是一个线程。仓库容量有限,只有库满时生产者不能存
该博客文章通过Java代码示例演示了生产者-消费者问题,其中生产者在仓库未满时生产产品,消费者在仓库有产品时消费产品,通过同步机制确保多线程环境下的线程安全和有效通信。
|
4月前
|
存储 运维 Java
函数计算产品使用问题之怎么配置定时触发器来调用Java函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。