基于Java的水果商城的设计与实现(程序源代码+数据库)
为了更方便、迅捷地满足广大网民在线购物需求,考虑到当前购物需求的激增以及市场竞争的加剧,仍有许多传统线下购物方式效率不高的问题。因此,我设计了一个在线水果商城系统。该系统结合了计算机系统的结构、概念、模型、原理和方法,充分利用了计算机技术的各种优势。采用JAVA语言,并结合了SSM框架以及MYSQL数据库进行设计和实现。这个在线水果商城主要包括系统用户管理、商品管理和订单管理等多个模块。它有助于水
摘 要
摘要:为了更方便、迅捷地满足广大网民在线购物需求,考虑到当前购物需求的激增以及市场竞争的加剧,仍有许多传统线下购物方式效率不高的问题。因此,我设计了一个在线水果商城系统。该系统结合了计算机系统的结构、概念、模型、原理和方法,充分利用了计算机技术的各种优势。采用JAVA语言,并结合了SSM框架以及MYSQL数据库进行设计和实现。这个在线水果商城主要包括系统用户管理、商品管理和订单管理等多个模块。它有助于水果商城实现信息化和网络化。通过经过测试,我们成功实现了系统的设计目标。与传统的管理模式相比,这个系统合理地利用了水果商城管理的数据资源,有效地减少了经济投入,显著提高了水果商城管理的效率。
关键词:JAVA语言;SSM框架;MYSQL数据库;水果商城
Abstract:In order to more conveniently and quickly meet the online shopping needs of the vast number of netizens, considering the current surge in shopping demand and the intensification of market competition, there are still many problems with the low efficiency of traditional offline shopping methods. Therefore, I designed an online fruit mall system. This system combines the structure, concepts, models, principles, and methods of computer systems, fully utilizing various advantages of computer technology. Designed and implemented using JAVA language, combined with the SSM framework and MYSQL database. This online fruit mall mainly includes multiple modules such as system user management, product management, and order management. It helps fruit malls achieve informatization and networking. Through testing, we have successfully achieved the design goals of the system. Compared with traditional management models, this system effectively utilizes the data resources of fruit mall management, reduces economic investment, and significantly improves the efficiency of fruit mall management.
Keywords:JAVA language; SSM framework; MYSQL database; Fruit Mall
目 录
一、引言
(一)开发背景与意义
随着互联网的迅猛发展,电子商务成为了现代商业的重要组成部分。网购已经成为人们生活中不可或缺的一部分,尤其是在线食品购物。随着人们对健康食品和新鲜水果的需求不断增加,搭建一套高效便捷的水果商城系统变得尤为重要。本论文基于Java的水果商城的设计与实现,旨在满足这一市场需求。
这个水果商城系统的开发具有重要意义。首先,它可以提供一个方便的购物平台,使消费者能够随时随地浏览和购买新鲜水果,从而满足他们的健康需求。其次,对于水果商家而言,这个系统可以帮助他们扩展市场,提高销售效率,降低运营成本。此外,通过数字化管理,商家可以更好地了解消费者的需求和购买习惯,有针对性地推出促销活动,提高市场竞争力。
(二)研究目的
本论文的研究目的是设计和实现一套基于Java的水果商城系统,以满足现代消费者的在线购物需求。具体而言,研究目的包括以下几点:
设计一个用户友好的水果商城系统,使消费者能够方便地浏览、搜索、选择和购买水果产品。
构建一个高效的订单管理系统,确保订单的准确处理和及时交付。
开发一个管理后台,使商家可以轻松添加、编辑和管理产品信息,以及监控销售和库存情况。
实现系统的安全性和稳定性,保护用户和商家的信息不受攻击和泄露。
通过性能优化和用户反馈来不断改进系统,提高用户体验。
(三)国内外研究现状
在水果商城系统领域,国内外已经有一些相关研究和应用。国际上,许多电子商务巨头如亚马逊、eBay等已经建立了庞大的在线水果销售平台,提供了丰富的产品和便捷的购物体验。他们在产品推荐、物流配送、支付安全等方面有着丰富的经验。
在国内,一些电商公司也开展了水果销售业务,例如京东、苏宁等。他们通过自有仓储和物流体系,提供了快速的配送服务。此外,一些创新型企业开始利用区块链技术来保障水果产品的质量和溯源,提高了产品的信誉度。
然而,尽管已经有了一些成功的案例,但水果商城系统仍然面临一些挑战,如订单处理效率、商品质量追踪、用户信息安全等问题。因此,本研究旨在通过基于Java的系统设计与实现,充分借鉴国内外的研究成果,解决这些问题,提高水果商城系统的综合性能和竞争力。
(四)论文结构
本系统完全使用软件工程学的方法,从系统的需求分析入手,然后设计系统的初步模型,数据库模型,设计出整个系统的功能模块和业务流图,最后是详细的页面设计和功能流程图。简单来说,第一章完成对系统的开发介绍,第二章是开发工具介绍;第三章对网上水果商城进行整体分析;第四章对系统做出总体设计;第五章是系统实现,第六章对系统进行功能上的功能测试,最后做出设计总结。
二、主要技术介绍
(一)Java语言
Java语言是一种广泛应用于软件开发的高级编程语言。它具有跨平台性、面向对象、多线程、安全性等特点,因此被广泛用于构建各种类型的应用程序,从移动应用到大型企业级系统。Java的跨平台性是通过Java虚拟机(JVM)实现的,这意味着开发人员可以编写一次代码,然后在不同操作系统上运行,无需重新编写代码。
Java的面向对象特性使得代码易于维护和扩展。它支持类和对象的概念,可以将代码组织成可重用的模块,提高了代码的可读性和可维护性。此外,Java的多线程支持使得开发者可以轻松创建多任务应用程序,提高了程序的并发性能。
Java也注重安全性。它提供了许多内置的安全特性,如内存管理、异常处理和访问控制,以帮助开发人员编写更加健壮和安全的应用程序。此外,Java还具有强大的社区支持和丰富的第三方库,开发者可以利用这些资源来加速开发过程。
(二)SSM框架
SSM框架是一种用于构建Java Web应用程序的集成框架,它由Spring、Spring MVC和MyBatis三个独立的框架组成,各自负责不同的任务,但可以无缝集成在一起,提供了一个完整的解决方案。
Spring是一个轻量级的IoC(Inverse of Control)容器和AOP(Aspect-Oriented Programming)框架,它可以管理应用程序中的对象依赖关系,实现松耦合的组件之间的协作。Spring MVC则提供了一个用于构建Web应用程序的模型-视图-控制器(MVC)架构,可以轻松处理HTTP请求和响应。MyBatis是一个持久层框架,它简化了与数据库的交互,提供了一种方便的方式来执行SQL查询和操作数据库。
SSM框架的集成使得开发Web应用程序变得更加高效和容易。开发者可以使用Spring来管理应用程序中的组件,使用Spring MVC来处理Web请求,使用MyBatis来访问数据库。这种集成还提供了许多便捷的功能,如事务管理、安全性、国际化支持等,可以帮助开发者构建健壮和可维护的应用程序。
(三)MYSQL数据库
MySQL是一个开源的关系型数据库管理系统(RDBMS),它广泛用于存储和管理结构化数据。MySQL具有高性能、可扩展性和稳定性的特点,因此被许多应用程序和网站采用作为其数据存储解决方案。
MySQL支持多种数据类型,包括整数、浮点数、字符串、日期等,可以满足各种不同类型的数据存储需求。它还支持SQL(Structured Query Language)语言,使得开发者可以方便地执行查询、插入、更新和删除操作。此外,MySQL还提供了事务支持,可以确保数据的一致性和完整性。
MySQL的可扩展性允许用户在需要时添加更多的服务器节点,以处理高负载的应用程序。它还支持复制和分区等高可用性和负载均衡的特性,确保数据的可靠性和可用性。
(四)Eclipse开发工具
Eclipse是一个开源的集成开发环境(IDE),主要用于Java应用程序的开发,但也支持其他编程语言。Eclipse提供了丰富的功能和插件,使开发者可以轻松编写、调试和测试代码。
Eclipse的编辑器具有语法高亮、自动代码完成、代码调试和版本控制等功能,可以提高开发效率。它还支持各种构建工具和项目管理工具,如Apache Maven和Git,使项目管理变得更加便捷。
Eclipse的插件生态系统非常丰富,开发者可以根据自己的需求安装和配置各种插件,以扩展IDE的功能。这些插件涵盖了各种开发任务,从Web开发到移动应用程序开发,都可以找到相应的插件来支持。
三、系统分析
本章将针对网上水果商城进行必要的需求分析。一开始对系统进行可行性分析,然后对系统进行关于功能上的需求分析,确定系统用户的角色,分析系统所要实现的功能是什么,最后对系统进行数据需求分析,为了较好地完成系统的各个项目,为项目的进一步开发工作做充足的准备,了解必要的具体的数据,有利于软件的实现。
(一)可行性分析
可行性研究是整个项目规划中的第一步,需要综合考虑系统实施过程中可能遇到的各种问题,确定系统是否有实施的必要。本系统是对已经实现运营的网上水果商城进行管理,因此具有较大的针对性。
本系统的硬件环境要求不高,所以硬件上基本能满足要求。JAVA语言可以使程序员快速高效地编写应用程序;因而具有技术可行性。
本系统不需要消耗大量的人力以及物力,开发前期也不需要耗费过多的财力,开发此软件不需要大量经费。由于系统开发的工具和软件都是可以免费使用的,因此系统开发的费用信息很少,甚至只需要少许的费用信息就可以开发出本系统,也可以忽略不计。因此具有经济可行性。
本系统采用SSM框架结合模式,无需另外安装别的软件,使用者很容易掌握并熟练使用。因为本系统就是web应用程序,只需要安装好服务器和数据库,导入数据库后,通过浏览器访问本系统,系统实施成功后减少了管理数据的时间,因此具有操作可行性。
本系统作为本科生毕业设计,不用于商业目的,不侵犯专利也不会妨碍他人,所使用的开发软件也都是免费版本的,符合国家法律规定,具有法律可行性。
通过以上四方面的可行性分析,可以确定网上水果商城是可行的。
(二)功能需求分析
本系统对功能需求分析,根据系统的需求和要求进行功能介绍。用户对系统的功能、行为、性能、设计约束以及期待。对系统功能进行模块划分,并且与用户交流,对用户需求达到性能最好,功能最佳,服务质量更好的效果。
1.系统流程结构
在完整的项目开发流程中,以需求分析为基础,基于系统选择的开发模式,使用相关工具和技术,依次进行数据库设计和功能实现,系统开发完成后,通过黑盒测试进行系统调试,完善系统,系统开发步骤具体如图1所示。
图1: 系统开发流程图
2.系统操作流程图
(1)登录流程图
本系统有两个登录界面,一个是用户端登录界面,一个是后台管理系统管理员登录端,但不管登录对象是管理员还是用户,登录流程都一样,登录系统会动态判断登录者的角色,并赋予其相应的权限。具体登录流程如图2所示。
图:2:登陆流程图
(2)系统核心业务流程图
用户端主要业务包括登录注册、用户信息修改、通知公告查看、商品信息、商品购买、订单信息等。对于用户而言,最核心的业务是商品的购买,其业务处理的流程如图3所示。
图3:商品购买流程图
(3)数据操作流程图
本系统需要从数据库中进行读取的数据有用户信息、商品信息、交流信息、订单信息、通知信息,其数据读取的操作流程如图4所示。
图4:数据读取流程图
(4)用户、商品、订单、通知等信息需要写入数据库,其数据存储的操作流程如图5所示。
图5:数据存储流程图
(三)各模块用例描述
1.业务参与者
加入到网上水果商城中的人员将进行如下的描述,如表1所示。
表1 :参与者词汇表
序号 | 词汇 | 描述 |
1 | 用户 | 进入系统使用网上商品销售管理系统 |
2 | 管理员 | 系统的数据进行更新以及商品信息管理、订单管理等管理 |
2.用户管理模块分析
用户功能模块用例图如图6所示
图6:用户功能用例图
(1)注册登录:此模块主要用于实现用户注册登录。
(2)我的购物:就是购物车,主要实现用户浏览商品时遇到心仪商品时可以加入购物车之后进行购买。
(3)订单模块:用户交易完成后生成订单信息。
(4)个人信息:用户可以随时查看自己的个人信息并且进行修改提交。
3.管理员模块分析
管理员用例图如图7所示:
图7:管理员用例图
(1)用户管理:管理员可在用户管理模块按照用户角色权限排序,分类浏览查看用户基本信息,可修改用户密码、权限等信息,可添加删除用户,可审核研究生注册。
(2)订单管理:对用户发布的订单信息进行审核删除管理。
(3)商品管理:管理员可以发布商品,并对商品进行修改、查找、删除。
2. SpringMVC
SpringMVC属于Spring框架的衍生模块,SpringMVC通过 DispatcherServlet 这个前端控制器(也叫中央调度器,笔者认为中央调度器更能体现其作用),来调用 MVC的三大件:Controller、Model、View。这样就保证 MVC的每一个组件只与 DispatcherServlet 耦合,而彼此之间独立运行,大大降低了程序的耦合性。使得系统的设计复合程序的开发之道,高内聚底耦合的设计原则。
3.MyBatis
MyBatis作为一个优秀的持久化工具,通过对象关系映射(Object Relational Mapping,ORM)架起了jsp对象与关系数据库间的桥梁,很好的协调对象与数据库的交互,提供数据查询和恢复机制,实现了与底层数据库的分离。
技术的可行性是指在当今所拥有的技术条件之下,计算机软件和硬件的发展能否够满足发展的要求。由于本系统开发基于jsp语言,在一般的计算机上就能够满足开发本系统所需要的软硬件条件;因为它占用的内存本来就相对较少,我们用MySQL数据对软件的开发以及设计在理论上没有问题的原因是:它占用的内存实在是太少了。
(三)MySQL数据库
MySQL是一个关系型数据库管理系统的数据库,作为当下最流行的关系型数据库管理系统之一,因其在Web应用方面的成就,所以也受到了很多大型物联网公司的青睐。由于其将所有数据存放于一大仓库内,所以它的速度和灵活性都大大提高了。此外,由于MySQL可以在不同系统中运行,所以它有良好的跨平台性。MySQL通过最常使用的准确语言SQL来访问数据库。MySQL因其体积小、速度快、成本低而广泛应用,它是基于Linux操作系统开发的,也是开放源码的免费数据库。另外优化SQL查询算法,提高查询速度。提供多语言支持,如中文GB2312,BIG5。支持大型数据库,可处理拥有上千万条的大型数据库
四、系统设计
在系统分析的基础上,本章首先介绍了系统的总体功能设计,详细描述了系统的不同模块,然后对系统的数据库设计进行了E-R图的转换,并且给出了各个功能模块的表设计。
(一)系统总体功能设计
通过软件的需求分析已经获得了系统的基本功能需求,根据需求,将网上水果商城功能模块主要分为管理员模块。管理员执行订单管理、商品管理等操作。如图8是系统的功能结构图。
图8:系统功能结构图
1.管理员模块
1.前台用户模块:
(1)注册登录:游客想要使用网上水果商城,首次使用需要进行注册,并且在注册时一定要填好所注册的要求的所有信息,只要完成以上条件,游客才可以注册成功,使用网上水果商城。
(2)个人管理:用户登录后,点击个人管理按钮,显示所有个人信息,用户在这个界面可以对个人信息进行增删改查等操作。
(3)订单管理:用户可以在上面查询近期购买的商品,查询其价格,管理员和日期对消费行为有所保障并且在上面进行退货申请。
(5)购物车:用户在购买喜欢的商品时,可以点击购物车进行存储,直到下次付款购买。
2.后台管理员模块:
(1)商品管理:管理员拥有了属于自己的账户,在使用系统前首先要进行登陆,登陆后台后,进行商品的增删改查相关操作。
(2)订单管理:包括用户购物时间、用户购物产品、用户购物价格、用户购物修改、用户购物删除,都是通过Sql语句来实现数据库操作,并将数据放置到Html界面中;
(二)数据库设计
系统里最为关键的部分是数据库方面,需要十分清晰的思路,从开始的设计时就需要做到确立模块之间的联系,从而可以很明确的建立表间的联系和表中所需的内容。设计数据库还有一点是减少表的繁杂的创建,所以联系很关键,可以大大的减少数据表中重复的事项。由此可以保证数据的完整和统一,不会造成数据的错误和重复,并且可以使数据得到数据库安全的保护。
1.数据库设计概述
数据库 的设计在开 发系 统中 非常 重要 ,整 个数 据库 的创 建是 库存 管理 系统 开发 和创 立的 核心 技术 ,概 括的 说, 就是 根据 用户 的需 求创 立起 满足 用户 的需 要的 数据 库。 数据 库的 整体 设计 是在 软件 开发 是其 最主 要的 问题。
再考虑 到数 据库 设计 的时 候, 我们 首先 应该 想到 把这 个系 统的 数据 设计 和处 理设 计密 切结 合起 来, 从而 使得 把整 个库 存信 息管 理系 统相 结合起来。
2.概念设计
一个完整的 数据 分析 过程 与这 个数 据库 的逻 辑结 构和 物理 结构 有十 分密 切的 联系 ,需 要完 成对 应用 数据 库的 信息 进行 确认 、编 纂、 组织 、挑 选。 我们 可以 采用 特定 的方 法来 获取 有关 用户 的所 有的 有效 信息 ,从 而使 这些 有用 信息 可以直接成为数据库的重要数据。
我们在数 据库 分析 中采 用E -R 图来 建立 相对 应的 关系 ,它 有实 体、 关系 、属 性三 种概 念。 实体 可以 说是 一个 用来 维持 和不 断利 用数 据的 大集 合; 属性 可以 说是 这个 物体 的所 具有 的特 点; 关系 很明 显指 的就 是每 个数 据实 体之 间的 种种 联系 ,关 系给 各个 实体 之间 建立 起了 相对 应的 模型 。根 据系 统的 需求 分析 和数 据库 的概 念, 建立E-R图。
系统总体E-R图。
图9:系统总体E-R图
- 商品实体图
商品实体图包括了商品的名称、价格、图片、描述、是否折扣、商品的数量还有管理员名称,如图10所示
。
图10:商品实体图
- 订单实体图
订单实体图包括了订单的编号、订单的金额、订单用户、收货地址、用户是否付款、管理员是否发货、物流信息的查看。如图11所示
图11:订单实体图
- 管理员实体图
管理员主要包括对订单的编号,以及管理员和用户的帐号密码进行审核以及记载。如图12所示。
图12:管理员实体图
3.表设计
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | username | varchar | 20 | 否 | 50 | 用户名 |
3、 | pwd | varchar | 20 | 否 | 50 | 密码 |
4、 | cx | varchar | 20 | 否 | 50 | 权限 |
5、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表3:新闻公告表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | biaoti | varchar | 50 | 否 | 300 | 标题 |
3、 | leibie | varchar | 20 | 否 | 50 | 类别 |
4、 | neirong | text | 8 | 否 | 8 | 内容 |
5、 | tianjiaren | varchar | 20 | 否 | 50 | 添加人 |
6、 | shouyetupian | varchar | 20 | 否 | 50 | 图片 |
7、 | dianjilv | int | 4 | 否 | 4 | 点击率 |
8、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表4:系统简介
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | leibie | varchar | 50 | 否 | 300 | 类别 |
3、 | content | text | 8 | 是 | 8 | 内容 |
表5:留言板
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | cheng | varchar | 20 | 否 | 50 | 昵称 |
3、 | xingbie | varchar | 8 | 是 | 20 | 头像 |
4、 | | varchar | 8 | 是 | 20 | |
5、 | youxiang | varchar | 8 | 是 | 20 | 邮箱 |
6、 | dianhua | varchar | 8 | 是 | 20 | 电话 |
7、 | neirong | varchar | 50 | 是 | 500 | 留言内容 |
8、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
9、 | huifneirong | varchar | 50 | 是 | 500 | 回复内容 |
表6:评论表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | pinglunneirong | varchar | 20 | 否 | 50 | 评论内容 |
3、 | pinglunren | varchar | 8 | 是 | 20 | 评论人 |
4、 | huifu | varchar | 20 | 是 | 50 | 回复 |
5、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表7:注册用户表
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | yonghuming | varchar | 20 | 否 | 50 | 用户名 |
3、 | mima | varchar | 8 | 是 | 20 | 密码 |
4、 | xingming | varchar | 20 | 是 | 50 | 姓名 |
5、 | xingbie | varchar | 20 | 是 | 50 | 性别 |
6、 | chushengnianyue | varchar | 20 | 是 | 50 | 出生年月 |
7、 | | varchar | 20 | 是 | 50 | |
8、 | youxiang | varchar | 20 | 是 | 50 | 邮箱 |
9、 | dianhua | varchar | 20 | 是 | 50 | 电话 |
10、 | shenfenzheng | varchar | 20 | 是 | 50 | 身份证 |
11、 | touxiang | varchar | 20 | 是 | 50 | 头像 |
12、 | dizhi | varchar | 20 | 是 | 50 | 地址 |
13、 | beizhu | varchar | 20 | 是 | 50 | 备注 |
14、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表8:友情连接
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 4 | 主键ID |
2、 | wangzhanmingcheng | varchar | 20 | 否 | 50 | 网站名称 |
3、 | wangzhi | varchar | 8 | 是 | 20 | 网址 |
4、 | logo | varchar | 20 | 是 | 50 | LOGO |
5、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表9:订单生成
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 8 | 主键ID |
2、 | dingdanhao | varchar | 50 | 是 | 50 | 订单号 |
3、 | zongjine | varchar | 50 | 是 | 50 | 总金额 |
4、 | dingdanneirong | text | 8 | 是 | 8 | 订单内容 |
5、 | goumairen | varchar | 50 | 是 | 50 | 购买人 |
6、 | xingming | varchar | 50 | 否 | 50 | 姓名 |
7、 | dizhi | varchar | 50 | 否 | 50 | 地址 |
8、 | lianxifangshi | varchar | 50 | 否 | 50 | 联系方式 |
9、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表10:购买
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 8 | 主键ID |
2、 | shangpinbianhao | varchar | 50 | 是 | 50 | 商品编号 |
3、 | shangpinmingcheng | varchar | 50 | 是 | 50 | 商品名称 |
4、 | shangpinleibie | varchar | 50 | 是 | 50 | 商品类别 |
5、 | jiage | varchar | 50 | 是 | 50 | 价格 |
6、 | shuliang | varchar | 50 | 是 | 50 | 数量 |
7、 | goumaishuliang | float | 10 | 是 | 10 | 购买数量 |
8、 | zonge | varchar | 50 | 是 | 50 | 总额 |
9、 | goumairen | varchar | 50 | 是 | 50 | 购买人 |
10、 | dizhi | varchar | 50 | 否 | 50 | 地址 |
11、 | lianxifangshi | varchar | 50 | 否 | 50 | 联系方式 |
12、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表11:商品类别信息
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 8 | 主键ID |
2、 | shangpinleibie | varchar | 50 | 是 | 50 | 商品类别 |
3、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表12:商品信息
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 8 | 主键ID |
2、 | shangpinbianhao | varchar | 50 | 是 | 50 | 商品编号 |
3、 | shangpinmingcheng | varchar | 50 | 否 | 50 | 商品名称 |
4、 | shangpinleibie | varchar | 50 | 是 | 50 | 商品类别 |
5、 | jiage | float | 10 | 否 | 10 | 价格 |
6、 | shuliang | float | 10 | 否 | 10 | 数量 |
7、 | tupian | varchar | 50 | 是 | 50 | 图片 |
8、 | jianjie | text | 8 | 是 | 8 | 简介 |
9、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
表13:购物车
序号 | 字段名称 | 字段类型 | 大小 | 允许为空 | 最大长度 | 备注 |
1、 | ID | int | 4 | 否 | 8 | 主键ID |
2、 | shangpinbianhao | varchar | 50 | 是 | 50 | 商品编号 |
3、 | shangpinmingcheng | varchar | 50 | 是 | 50 | 商品名称 |
4、 | shangpinleibie | varchar | 50 | 是 | 50 | 商品类别 |
5、 | jiage | varchar | 50 | 是 | 50 | 价格 |
6、 | shuliang | varchar | 50 | 是 | 50 | 数量 |
7、 | goumaishuliang | float | 10 | 否 | 10 | 购买数量 |
8、 | zonge | varchar | 50 | 是 | 50 | 总额 |
9、 | goumairen | varchar | 50 | 是 | 50 | 购买人 |
10、 | addtime | datetime | 8 | 否 | 8 | 添加时间 |
五、系统实现
网上水果商城,系统实现就是根据系统分析的结果,运用系统科学的思想和方法,设计出能最大限度满足设计目的系统的过程,详细设计要考虑好各功能模块的组合问题,实现就是实现系统相关功能页面的相应操作。进入到这个环节,也就可以及时检查出前面设计的需求是否可靠了。一个设计良好的方案在运用于系统实现中,是会帮助系统编制人员节省时间,并提升开发效率的。所以在系统的编程阶段,也就是系统实现阶段,对于一些不合理的设计需求,也是可以及时发现。因为设计的方案是完全指导系统的编码过程的。
(一)前台页面功能实现
1.系统首页界面
网上水果商城的主展示页包含商品管理,在线留言,关于我们,以及登录信息。如图13所示
图13首页页面图
2.商品详情界面
在系统商品信息模块,用户可以看到系统的商品列表,商品列表是展示商品信息的地方,用户可以在此查看到商品各种信息,点击商品后可以查看到其他信息。商品信息界面如图14所示
图14:商品详情页面图
3.用户购物页面
用户在首页浏览商品信息,用户可以对订商品进行购买。
购物界面如图15所示
图15:购物页面
(二)后台功能实现
1.用户登陆面
用户登陆,当用户输入的账号与密码填写错误时,即登陆不成功。意思就是说,填写上账号与密码若系统不提示登陆失败即登录成功,用户登录界面如图16所示
图16:用户登陆界面
用户登录流程图如图17所示
图17:用户登录流程图
2.商品管理页面
管理员可以在商品管理中查看到所有商品信息,在商品列表页面,管理员可以对商品信息进行审查,对有问题的商品进行删除操作,对没有问题的商品进行上架操作。如图18所示
图18:商品管理页面
商品管理页面流程图如图19所示
图19:商品管理页面流程图
3.用户订单管理页面
管理员在订单管理中对用户的订单信息进行发货操作。如图所示20
图20:用户订单管理页面
用户订单管理页面流程图如图21所示
图21:订单管理流程图
六、程序测试
本章进行系统的程序测试,先介绍了程序测试的基本概念,然后说明测试的重要性以及目的,最后讲述了测试的步骤。
(一)测试的目的
程序测试是很重要的一个环节,当自身的程序已经完成时,仍需要测试来保证程序的正确性和可靠性,因为往往此时出现的错误就是用户可能会出现的错误,所以调试变得至关重要。唯有经过多次的调试才能够使系统达到完美的状态,使得用户可以安全,放心的使用程序,保障用户信息的安全是每个系统最基本的需求,因而调试也就是系统的最基本的要求。
软件测试可以检测是项目的漏洞,是规避风向的重要途径。这是软件开发过程中一个很重要的环节。前期我们测试的越细致,系统的完整性更健全,用户的体验与评价会更好。所以越重要的系统,测试环节就应该更加缜密细致。网上水果商城是一个隐私信息较多的系统,如果数据库出现泄漏问题,势必会对用户带来很大的困扰,所以测试是一个很重要的环节。
本系统主要测试客户端的使用与后台服务器的使用。主要测试注册、登录、完善信息、页面跳转等功能能否实现。
(二)测试方法
系统在使用之前是需要进行大量的测试,这个系统测试的方法是黑盒测试与白盒测试。黑盒主要是指在不考虑系统的内部结构的情况下对系统的输入数据和给出的结果进行以及自己预期的结果是否一致,当一致的时候说明测试通过,否则系统有误。白盒测试是指主要对系统个个个模块和代码段的逻辑等进行测试,相比而言,本文的测试更加的侧重前者的测试。
(三)测试用例
1.用户登录功能测试
检测用户能否正常登录系统,如果正确输入账号和密码,就可进入使用该系统,如果输入错误,是否可以进入该系统中
测试目的:用户可以进入并且使用该系统。
测试方法:黑盒测试。确定好一个用户,账号“123456”密码“141414”
用户登录功能测试用例表如表14所示。
表14:用户登录功能测试用例表
序号 | 输入 | 预期结果 | 实际结果 | 测试结果 |
1 | 账号不输入,密码不输入 | 提示账号或者密码不能为空 | 提示账号或者密码不能为空 | 通过测试 |
2 | 账号:123456;密码不输入 | 提示密码不能为空 | 提示密码不能为空 | 通过测试 |
3 | 账号:123456;密码:123456 | 提示密码错误 | 提示密码错误 | 通过测试 |
4 | 账号:123456;密码:141414 | 成功登入该系统 | 成功 | 通过测试 |
2.管理员添加商品功能测试
管理员添加商品功能测试主要是为了检测管理员添加商品功能模块是否能够正常添加。在管理员添加商品时,输入类型编码,输入正确类型编码可以正常添加商品,如果没有输入类型编码是否能够实现添加功能,输入错误编码能否实现添加功能:
测试目的:检测管理员添加商品功能模块是否能够正常运行;
前提:管理员已登录成功,进入到商品管理页面,准备添加;
测试方法:黑盒测试。正确类型编码(A和B),输入其他编码时是否可以添加。
管理员添加商品功能测试用例图如表15所示。
表15:商品添加功能测试用例表
序号 | 输入 | 预期结果 | 实际结果 | 测试结果 |
1 | 类型编码未填写 | 添加失败 | 成功 | 通过测试 |
2 | 类型编码:A | 成功添加 | 成功 | 通过测试 |
3 | 类型编码:B | 成功添加 | 成功 | 通过测试 |
4 | 类型编码:C | 添加失败 | 成功 | 通过测试 |
5 | 类型编码:1 | 添加失败 | 成功 | 通过测试 |
(四)测试结果
经过系统的测试后,系统在正常运转时没有问题,基本上没有明显的错误。在界面优化方面,存在不美观的情况,但是每个人的审美不一样,对界面的要求也不一样,同时我们知道没有绝对稳定与完美的系统,我们会在后期中不断进行维护。在测试维护的过程中,解决了很多在代码实现过程中模糊的问题,使得代码编写更加规范。本章主题内容就是测试环节,主要有界面测试,注册登录环节测试以及商品添加测试,主要使用的方法还是在白盒测试与黑盒测试。测试作为项目正式运转前最重要的阶段,起到了中流砥柱的作用,每个细微的毛病,都能引起系统的崩溃,千里之堤毁于蚁穴就是这个道理,所以在本章里是一个很细节性,与此同时,又是一个很有逻辑的重要过程。
结论
此次系统设计不仅考验我们的大学四年所学知识的运用水平,也是巩固和提高我们的学习水平的考验。在此次系统设计中,自己的知识不仅得到了增长,同时也大大提高了我的动手动脑能力,让我享受了探索的乐趣,成功的喜悦,这对我来说是一笔巨大的财富,将受益终身。
回顾本次设计学习计算机的这几年,经历的系统制作工具有很多,但并没有非常认真的去深入了解和学习使用。也更谈不上如何去分析、理解、运用和总结这些软件的特性,除了在平常的作业中自己去摸索使用这些软件,其他更厉害的编程软件也是涉及的非常少,在这次设计中我仿佛打开了新世界大门,通过学习和使用所学过的软件,我的知识结构体系又更加牢固和更新。
此课题通过对Java和MySQL数据库的了解,从硬件和软件两方面说明了基于ssm框架网上水果商城的可行性。通过本次基于ssm框架网上水果商城的设计,让我明白到实践出真知的道理,只有多动手,才能验证做的是否正确,在系统开发中,经验尤为重要,若是经验不足,很可能会考虑不周,只有系统界面美观、有特色才会吸引更多的用户。
通过这次基于ssm框架网上水果商城的设计与开发,我参考了很多相关系统的例子,取长补短,吸取了其他系统的长处,逐步对该系统进行了完善,但是该系统还是有很多的不足之处,有待以后进一步学习。本课题在基于Java的开发上进行了不断摸索、探究,不断优化开发的性能,受校园学习的限制,系统实现难免会有一些不足,查阅了大量的资料,进行自主学习,不断完善该系统的性能,此系统目前可以对不文明语句进行过滤、筛选;尚且无法辨别图片的合法性,仍需不断完善。
对于这次系统设计我总结了以下几点:(1)掌握软件的使用。在制作系统之前一定要熟练掌握一种或以上的软件,要不断的摸索和运用,有什么不懂的地方一定要百度或者问其他人,只有自己熟练掌握才能更好的运用软件写出完美的系统。(2)掌握一门编程语言。其实这个诗词文化系统完全可以只用编译,但是我想让两种语言混编应该也可以,最后是我错了,只能分开编写,因为不懂这些语言的逻辑或者用法一度导致我无法完成设计,看来熟练运用一门语言真的很重要。
更多推荐
所有评论(0)