下载地址:
https://download.csdn.net/download/qq_41221322/89519994
摘要
近年来,网上购物成了风靡全球的一种现象,大家逐渐接受了网上下单,隔天取货的这种方式。我们分析了一些购物网站现有的不足,结合我们所学的知识,制作了一款购物网站程序。学以致用,语言采用了大学时期学习的JAVA语言,用了现在最流行的框架spring,和目前通用的数据库技术,结合javascript的前端,开发出来一款具有魅力的界面,流畅的操作的购物系统。
本文的主要目的是在了解购物网站设计流程的基础上,进一步优化和改进购物网站的设计。通过测试,找出其优缺点。通过反复的探索,JSP和SQL技术被用来实现期望的设计目标。最后的测试表明,系统基本达到了预期的目标,可以正常使用。
关键字:SQL,Spring,购物网站,流程设计
Abstract
In recent years, online shopping has become a worldwide phenomenon. People gradually accept the way of ordering online and picking up goods the next day. We analyzed the shortcomings of some shopping websites, and combined with our knowledge, we produced a shopping website program. For practical use, the language uses the JAVA language learned in college, the most popular framework spring, and the current general database technology, combined with the front-end of javascript, to develop a charming interface, smooth operation of the shopping system.
The main purpose of this paper is to further optimize and improve the design of shopping websites on the basis of understanding the design process of shopping websites. Through testing, find out its advantages and disadvantages. Through repeated exploration, JSP and SQL technology are used to achieve the desired design goals. The final test shows that the system basically achieves the expected goal and can be used normally.
Key words: SQL, Spring, shopping website, process design
第一章 引言
现如今,随着经济的快速发展,人们的生活节奏越来越快,休闲娱乐的时间也越来越少,没有时间去购物。从消费者的角度来说,一方面没有时间去购物,另一方面商场的商品种类太少,并不能满足其要求。从商家的角度而言,实体店来往顾客较少,销售量低,带来的利润也十分微薄。而互联网技术的日新月异,越来越多的人享受着互联网带来的便利,电子商务也应运而生。人们需要一个网上购物的系统网站,顾客可以在网站上随意挑选和购买所需商品,节省了购物的时间与精力,商家可以在网站上售卖自己的货物,拓宽了销路,利润也会非常可观,从而形成顾客与商家互利共赢的局面。
国外一些较为发达的国家,其计算机网络知识普及较早,对网上购物的思想观念也较为成熟,类似沃尔玛、亚马逊这样的零售商店都是网上购物系统的先驱,发达国家的人民因接触较早,也早已习惯了足不出户的进行网上购物。而我国起步较晚,到了二十世纪末我国在网上购物方面的建设才显露头角,我国艰苦奋斗了十几年,国人渐渐形成网上购物的理念,开始在淘宝、京东等购物app上购买所需商品,同样地,越来越多的商家开始建设自己的网站,售卖自己的商品,拓宽了自身的销路,打破了时间和空间上的限制,但绝大多数的商家也因为经营不善而关门大吉,其根本原因在于结算方式和订单管理的落后,网上购物需要顾客绑定网银,有的商家往往采用送货上门货到付款的方式,此举不如顾客自行购买来得更加省时省力,另外,商家对订单的管理也是非常混乱,没有对订单进行分门别类,造成管理上的落后。因此设计一个便于用户购买商品、商家销售管理商品的简易便利的网上购物系统是十分必要的。
本课题研究的主要工作就是设计一个网上购物系统,满足用户在网上可以在任意时间任意地点地挑选想要的商品,另一方面商家可以对商品和订单进行管理的系统,解决当今社会人们想要足不出户网上购物的需求。本课题的主要研究如下:
- 了解商家对商品管理需要的功能以及订单处理时需要的设计,然后对网上购物系统的功能和实用性上进行系统地分析。
- 在网上购物系统的需求分析的基础上,对系统的整体框架和模块进行细节上的划分。
- 网上购物系统的模块划分,此处会详细介绍模块的设计过程,包括前端和后台的设计过程。
- 对网上购物系统的数据库进行设计与分析,即描述数据库的设计细节。
- 阐述网上购物系统的基本功能并运行展示最后的成果。
- 设计的目标及基本思路
- 本次设计要开发一个网上购物系统,将采用Java语言作为编程语言,其设计思路如下:
- 客户在前台可以进行注册登录、按照商品的类别查看商品、将商品放入购物车并购买商品等操作,能查看订单的状态。
- 商家在后台可以进行注册登录操作、对订单进行增删改查、对商品进行增删改查、设置商品类别和热门商品标注等操作,能对订单进行发货。
第二章 相关技术
2.1 JSP简介
Jsp的作用点是在服务器端的。一般是先发出一段文本,经过多般波折后可以在客户端接收到,因此客户端安装好浏览器,即可在线浏览。
使用微软SQL数据库作为此系统的数据库,主要的思考是它具有独特功能,可以在网络上发布数据库中所包含的数据。SQL Server给用户权限将一些本地的数据数据通过提供的工具进行发布,而且能够按照个人需求进行不同程度上的改动。此数据库在长期发展以来,在系统设计中占据了很高的位置,在当今大部分的系统中都会运用到sql server。所以最后决定使用它完成系统的设计。
JSP是一种服务设备的终端,不管是否写入一个环境,无论是服务设备的终端脚都是在这个环境中写入的,都可以用来创建一个无状态网页或Web应用程序。JSP文件扎根于网页服务器,文件的管理与操作在此处进行。ASP因为是面向因特网的,所以有很多自己的特点。它包含很多资源,用户可以随意取用,经过处理后才能发送到web浏览器。
在这次的的系统设计中,运用到的jsp技术,加强了系统的交互性,在操作方面得到了优化。
2.2 javascript技术
JavaScript是一种流行的前端编程语言,这个语言可以包含在html网页上,这个语言使网页更具有优秀的交互性。我们可以使用javascript来检查或者修改表单的内容或者更改图像或者打开新的窗口和写入动态的页面的内容。您甚至可以将它与CSS一起用于生成DHTML(动态超文本标记语言)。这允许您在页面上显示、消失或移动部分网页。JavaScripts只在任何设置的时间在浏览器窗口上的页面上执行。JavaScript是一个解释,面向对象,高级脚本语言,而Java是一个客户端,编译,面向对象的高级语言。js程序被传递到浏览器所在的计算机,并由该计算机运行。另一种选择是服务器端,在服务器端运行程序,只将结果传递给浏览器所在的计算机。例如,php、perl、asp、jsp等。
js程序作为源代码传递,所有编程语言都可见。然后在使用时转换为机器代码。编译后的语言首先被转换成机器代码,然后被解释出去,所以说我们永远也看不到js的原始的语言。但是对于Java是双编译的,这样就意味着它在被传递之前被半编译,也就是编译成字节码的形式,完成之后然后在一个JVM中执行,它在使用之前将它转换成完全编译的代码,以便在计算机的处理器上执行它。被解释的语言通常对语法不那么挑剔,如果你在他们从不使用的部分犯了错误,那么这个错误通常不会给你带来任何问题。
通常来说脚本语言通常用于执行重复性任务。虽然它们可能是完整的编程语言,但通常不会深入到复杂程序的深度,例如线程和内存管理。他们可以使用另一个程序来完成工作,并简单地告诉它要做什么。他们通常不创建自己的用户界面,而是依赖其他程序为他们创建一个界面。对于javascript来说,这是非常准确的。我们不必告诉浏览器每一个像素在屏幕上的具体内容(尽管有一个称为canvas的相对较新的API,可以在需要时实现这一点),我们只需告诉它我们希望它更改文档,它就能做到。浏览器还将负责内存管理和线程管理,让javascript可以自由地进行它想做的事情。
第三章 系统分析
系统的可行性分析是为了帮助我们快速准确地判断一个系统是否有开发的必要和可能,主要从技术、经济等方面对网上购物系统进行全面的分析,来确保可以在最短的时间找到最合适的开发方法,同时减少系统开发中途失败的风险。
技术可行性:本次网上购物系统主要采用的是Java语言开发的jsp系统,采用的是eclipse IDE的环境,数据库是MySQL,是很常用的数据库,Java语言是一门非常成熟的语言,IDE环境对Java语言是非常友好的,因此非常适合开发网上购物系统。
经济可行性:从经济的角度出发,估算网上购物系统的开发成本以及运营成本,评估网上购物系统给商家带来的利润,本次设计的网上购物系统具有以下的优势特征:
- 对于小型商店的商家而言,网上开店的成本非常低,并且回报率很快很高,不存在资金存活的问题。
- 与实体店的经营时间相比,网上商店24小时均可以营业,不需要员工看店,也不需要收银员,任何时间都可以进行订单交易。
- 网上商店的销售地点不受限制,在家里就可以经营自己的店铺。
- 当今社会网络盛行,人们上网是一件非常普遍的现象,因此网上商店不用担心人气不足的问题。只要网站上出售的商品物美价廉、服务优质就缺乏客户上门。网上购物系统操作简单,无需雇佣很多员工,节省了大量的成本。
前期对用户在网上购物系统的基本需求和功能做了全面的调查与分析,经过评析之后,系统应具备以下的功能:
前端设计:
- 登录注册功能:用户打开系统,浏览挑选商品,在购买商品之前,要进行注册登录,保证一人一个账号,互不干扰。
- 类别选择:用户想要购买某一类的商品,可以选择相应的类别查看,然后挑选商品。
- 购物车添加:用户选择到心仪的商品,可以将商品加入购物车,最后进行结算。
- 我的订单:用户根据我的订单可以查看历史购买的记录以及订单的状态。
后台设计:
- 用户管理:该功能用于查看用户的用户名和真实姓名,可以对用户的个人信息进行修改和查看。
- 分类管理:此处要设置多级分类,一级分类主要将商品分一个大类,二级分类将其中的某类商品再做一个细分类。
- 订单管理:用于查看订单的具体信息,可以看到订单的金额、收货人、订单的状态等。
- 商品管理:用于对商城的商品进行增删改,比如价格、类别、商品名、商品图片等。
- 系统界面与其他的网上购物系统相比,界面更加简洁美观。
- 能够对订单进行有效管理,查看货物状态。
- 顾客快速挑选商品和购物。
- 商家高效管理商品与订单。
本次设计的网上购物系统是分为两大模块,前台和后台,前端主要是服务于顾客,提供了用户注册登录、商品浏览、购物车添加、订单管理的功能,具体如图3.1所示:
图3.1 前台模块图
后台模块主要是服务于商家,可以对商品进行设置,类别管理、订单管理、用户信息管理的功能,具体如图3.2所示:
图3.2 后台模块图
第四章 系统设计
首页:首页的在商品浏览页面先是热门商品,其次是最新商品,最后是普通商品。首页提供了商品的类别选择,用户可以根据类别选择快速查找需要的商品。每个商品都提供了一个链接,点开链接,可以看到商品的明细,也能商品加入购物车。
图4.1 首页设计流程图
用户登录:用户需要在网站系统中注册登录才能在将商品加入加购物车,其注册信息需要填写的是用户名、用户密码、用户姓名、电话、邮箱、详细地址,正确填写后便完成注册,登录网上购物系统。
图4.2 用户登录注册模块设计流程图
购物车功能:用户点击商品详情,看到商品的价格及详细描述之后,可以选择将商品加入购物车,可以多选几件商品,最后点击我的购物车,然后一起结算。
图4.3 购物车功能模块设计流程图
订单管理:用户将购物车的商品点击提交购买时,需要填写收货人的姓名、电话以及收货地址,提交成功需要再次确认才能付款成功。另外,客户每一次的订单记录都会保存,用户点击我的订单就能看到订单状态和订单详情。
图4.4 订单状态设计流程图
用户管理:用户管理是用于保存每一个用户注册时提供的基本信息,后台可以对用户的信息进行增删改查,方便商家对用户的管理。
分类管理:分类管理设计分为两个部分,一级分类和二级分类,一级分类用于将商品分为一个大类,二级分类是在一级分类的基础上再次分类,起到了快速筛选的作用。
订单管理:主要用于查看每一笔订单的基本信息,包括订单状态、订单的编号、订单的收货人、收货地址、成交时间、成交金额以及成交的商品。
商品管理:商品管理,顾名思义,就是对商品的增删查改,商品管理列表显示每一条商品的编号、图片、价格以及商品名称,在添加商品时,需要填写商品的名称、编号、市场价格、商城价格、所属类别、是否为热门商品、商品的图片与详情等信息,信息保存后仍可以修改,方便了商家管理商品的属性。
第五章 数据库设计
5.1 数据库简介
关系数据库管理系统
关系数据库管理系统简称为RDBMS。在RDBMS中,数据存储在不同的表中,表之间的关系是使用主键和其他称为外键的键建立的。我们将详细了解关系数据库管理系统,以更清楚地了解MySQL,因为MySQL是一种关系数据库管理系统。
让我们修改与RDBMS相关的术语:
1。数据库:数据库用于存储包含相关数据的表集合。
2。表:表是以行和列的形式组织的相关数据的集合。数据库中的表看起来像一个简单的电子表格。用于表示或存储与对象或实体相关的数据,甚至表示关系的表。
3。列:列,也称为字段。列存储特定字段的数据值,例如,列名称用于存储仅存储员工名称的员工名称。
4。行:行,也称为记录。行是与表中特定实体相关的字段值集。例如,在Employee表中包含EID、ENAME、Salary、Address等字段。
5。约束:约束是限制可以存储到表中的数据类型的规则。约束有助于维护表和数据库中的数据完整性。一些约束条件如下
主键:主键是一个唯一的键,这意味着它不应该有重复的值,也应该有空值。因为主键具有唯一的值,所以它可以用于标识每一行或实体。
外键:外键是指引用另一个表的主键的键。用于在表之间建立连接的主键和外键。
复合键:复合键,也称为复合键。复合键是一个将多列作为主键的键,因为标识每行只需要一列是不够的。
非空:非空约束限制列输入空值。
唯一:唯一约束限制列输入唯一值。
检查:检查约束限制列输入指定域中的值。
默认:默认约束如果输入了空值,则输入默认的指定值。
5.2 表的简介:
表 5-1 系统管理员
字段说明 | 字段名称 | 字段类型(长度) | 备注 |
表的id | ID | BIGINT(20) | 主键并自增 |
密码 | Password | VARCHAR(255) | 同“字段说明” |
用户 | Username | VARCHAR(255) | 同“字段说明” |
表 5-2 CLASSIFICATION
字段说明 | 字段名称 | 字段类型(长度) | 备注 |
表的id | ID | BIGINT(20) | 主键并自增 |
类别名字 | Cname | VARCHAR(255) | 同“字段说明” |
父id | Parent_id | VARCHAR(255) | 同“字段说明” |
类型 | Type | VARCHAR(255) | 同“字段说明” |
表 5-3 ORDER
字段说明 | 字段名称 | 字段类型(长度) | 备注 |
order表的id | ID | BIGINT(20) | 主键并自增 |
地址 | Addr | VARCHAR(255) | 同“字段说明” |
名字 | Name | VARCHAR(255) | 同“字段说明” |
订单时间 | Order_time | DATE | 同“字段说明” |
手机 | Phone | VARCHAR(255) | 同“字段说明” |
状态 | State | BOOLEAN | 2种状态 |
总价格 | Total | FLOAT | 同“字段说明”的id |
用户id | userid | BIGINT(20) | 外键 |
表 5-4 ORDER_ITEM
字段说明 | 字段名称 | 字段类型(长度) | 备注 |
ID | ID | BIGINT(20) | 主键并自增 |
总价格 | Count | FLOAT | 同“字段说明” |
订单id | Order_id | BIGINT(20) | 外键 |
产品id | Product_id | BIGINT(20) | 外键 |
总数 | Sub_total | BIGINT(20) | 同“字段说明” |
表 5-5 PRODUCT
字段说明 | 字段名称 | 字段类型(长度) | 备注 |
表的id | ID | BIGINT(20) | 主键并自增 |
类别id | Csid | BIGINT(20) | 外键 |
折扣 | Desc | FLOAT | 同“字段说明” |
图片 | Image | VARCHAR(255) | 同“字段说明” |
是否热销 | Is_hos | BOOLEAN | 2种状态 |
市场价格 | Market_price | Float | 同“字段说明” |
时间 | Pdate | DATE | 同“字段说明”的id |
本地价格 | Shop_price | FLOAT | 同“字段说明”的id |
标题 | title | VARCHAR(255) | 同“字段说明” |
表 5-6 USER
字段说明 | 字段名称 | 字段类型(长度) | 备注 |
表的id | ID | BIGINT(20) | 主键并自增 |
地址 | Addr | DATETIME | 同“字段说明” |
电子邮件 | | FLOAT | 同“字段说明” |
名字 | Name | VARCHAR(255) | 同“字段说明” |
密码 | Password | BIGINT(20) | 同“字段说明” |
电话 | Phone | BIGINT(20) | 同“字段说明” |
用户名 | username | BIGINT(20) | 同“字段说明”的id |
第六章 系统测试
5.1 测试目的
测试是软件开发过程中必不可少的一个步骤。程序的第一次开发很少会有十全十美,或多或少都会存在一些问题和漏洞,轻则影响用户的使用体验,重则对整个系统造成影响。因此所有的程序在运用之前都需要二次批改。在批改之前需要测试一下系统的功能。测试的目的是为了检测出系统中存在的隐患,为了避免不必要的麻烦。为了保证系统的安全性和稳定性,避免在投入使用后产生不必要的问题和错误,本系统在设计完成后必须进行详细的测试以确保整个程序正确无误。
5.2 具体测试
测试模块 | 测试序号 | 测试用例 | 测试结果 |
整体模块 | user_01 | 用户登录 | 测试通过 |
user_02 | 用户注册 | 测试通过 | |
User_03 | 购买商品 | 测试通过 | |
User_04 | 退出登录 | 测试通过 | |
User_05 | 查看购物车 | 测试通过 | |
User_06 | 进入购物页面 | 测试通过 | |
游戏模块 | Admin_01 | 管理员登录 | 测试通过 |
Admin_02 | 发布商品 | 测试通过 | |
Admin_03 | 管理员注销 | 测试通过 | |
Admin_04 | 删除商品 | 测试通过 |
结论
本次设计的网上购物系统,基本上满足用户的需求,解决了用户足不出户就能购买到所需商品的困难,商家让自己的商品有了更好的销路,获得了较多的利润。目前,市面上有很多网上购物系统,本次设计的网上购物系统与其他系统相比,具有以下的优点:
- 购物系统界面简洁,省去了很多不必要的界面设计,也没有让人头疼的广告弹窗。
- 网上购物系统功能丰富,用户可以根据类别快速选择所需商品,也可以直观地看到商品的细节,从而能让客户在买商品时做到实物与想象一致的状态。
- 购物系统在提交订单的时候,没有直接付款,需要客户确认之后才会付款,减少了客户误拍错拍的事件发生。
- 购物系统提供了订单的状态,用户和商家可以根据货物的状态来判断货物是否发出或者收货。
虽然此购物系统有很多的优点,但由于时间的关系以及个人的能力有限,系统还有一些不足的地方,具体缺点如下:
- 本次的付款设计是虚拟的,没有采用网银支付、支付宝支付、微信支付等,因此本次的网上购物系统只是一个模拟的状态,并不能用于实际生活中,但后期对其进行添加真实的货币支付,便可应用。
- 本次的订单状态只能显示出发货、等待收货、确认收货等一些状态,没有对系统设计物流设计,用户无法查看货物运输的情况,这一点的不足有待改进。
从本次的项目需求来看,我还是基本完成了所需的功能。本次设计的从无到有,让我学习了很多的知识,尤其是对jsp系统有了更深层次的理解,大大地提高了我的编程能力,独立完成这个项目,是对我最大的锻炼,今后在工作中也会不断努力,Java开发将是我一生努力的方向。
致谢
本次毕业设计做了很长一段时间了,在这段时间里,我常常感叹韶光易逝,尤其在我的毕设毫无进展的时刻,我焦急,我忧虑,不过还好,这一切都挺过来了。无论当时的情况有多么糟糕,可终究等到了柳暗花明的那一天。
在毕业设计的过程中,我最先感谢的是我的老师,在我不知道毕设怎么做的时候,是老师给了我设计的思路,老师用耐心和温暖不断地鼓励着我,很多问题我都问了很多遍,是老师的不厌其烦深深地感动着我,他认真负责的工作态度让我由衷地从心里感到敬佩,老师,谢谢您。
我还要感谢的好兄弟,我可爱的舍友们,很多技术我都不是很懂,是他们和我一起学习,帮助我完成这个毕业设计,如果没有他们,我毕业设计到现在都完成不了。
我还要感谢我亲爱的父母,感谢他们这么多年对我的教育,感谢他们在我最困难的时候给我无条件的关爱,感谢他们在我最绝望的时候给我无形的温暖,感谢爸爸妈妈,我爱你们。
最后,我要感谢我的学校,非常荣幸能够来到这里学习,接受高等教育,学习了很多知识,让我在这里认识了那么多优秀的老师与同学,希望母校会越来越好。
系统实现
参考文献
[1]卢露.网上购物系统的设计与开发探析[J].电脑迷,2016(11):98.
[2]汪东芳,薛丽香.基于JSP的网上购物系统研究[J].无线互联科技,2016(13):54-55+66.
[3]谭谦. 网上购物系统的设计与实施[D].湖南大学,2016.
[4]刘博.JSP网上购物平台的设计与实现[J].无线互联科技,2016(01):9-10.
[5]王宇龙. 现代网上购物信息管理系统的研究[D].吉林大学,2015.
[6]骆兵,蔡毅杰.网上购物系统架构设计与分析[J].科技信息,2014(09):200+224.
[7]尹春宏,马玲.网上购物系统体系的构建——基于Jsp开发技术[J].计算机光盘软件与应用,2014,17(01):38-39.
[8]包敏. 基于JSP技术的网上购物系统设计与实现[D].电子科技大学,2013.
[9]刘鑫. 基于JSP的网上购物系统研究与设计[D].北京邮电大学,2013.
[10]陈李飞. 基于JSP的网上购物系统开发[D].苏州大学,2012.
[11]曾磊. 基于JSP网上购物系统的实现与应用[D].南昌大学,2011.
[12]倪雪梅.网上购物系统的设计与实现[J].赤峰学院学报(自然科学版),2011,27(04):53-54.
[13]时光. 网上商城系统的设计与实现[D].北京邮电大学,2010.
[14]辛峰.基于JSP的网上购物系统设计与实现[J].哈尔滨职业技术学院学报,2010(01):112-113.
[15]张建兵,蔡长安.基于JAVA的B2C网上购物系统的设计与实现[J].重庆工商大学学报(自然科学版),2009,26(06):563-566.
[16]金宝壮.基于JSP的网上购物的技术与分析[J].福建电脑,2009,25(11):52-53.
[17]张栋. 基于关联规则的网上购物系统的研究与实现[D].山西财经大学,2009.
[18]孟海洋,薛红,郭培源,曹利红.网上超市购物系统的设计与实现[J].北京工商大学学报(自然科学版),2008(06):48-51.
[19]李贤华.基于JSP技术的大型网上购物系统的设计与实现[J].计算机与现代化,2008(08):82-84+89.
[20]廖彦华,罗小亮.基于JSP技术的网上购物系统[J].电脑知识与技术(学术交流),2007(23):1276-1279.
[21]欧阳昉. 网上商城购物系统研究与开发[D].电子科技大学,2007.
[22]万华.基于JSP的网上购物系统的实现[J].现代计算机(专业版),2002(10):60-63+91.
标签:在线商城,springboot,订单,系统,购物,商品,源码,设计,网上 From: https://blog.csdn.net/qq_41221322/article/details/140229238