随着Internet的使用越来越广泛,在传统的商业模式中,对于日常各类商品,人们习惯于到各种商家店铺购买。然而在快节奏的新时代中,人们不一定能为购买各类商品腾出时间,更不会耐心挑选自己想要的商品。所以设计一个网上商城,既是迎合电子商务的大潮流,也是传统商品销售行业的一个突破口,可以给传统销售行业带来转变和机遇。
本系统主要是提供给用户一个购买各类商品的平台,通过价格优势吸引众多消费者来购买,实现正常运营。该系统采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作系统采取Mysql作为后台数据的主要存储单元,运用软件工程原理和开发方法,采用node.js的koa技术构建的一个管理系统,实现了本系统的全部功能。目标是实现一个以销售为中心的计算机系统,构建用户信息与账号,账号与订单信息有机结合的业务系统。
关键词:网上商城;网上购物;Node.js
With the more and more extensive use of the Internet, in the traditional business model, people are used to buying all kinds of daily goods from various stores. However, in the fast-paced new era, people may not be able to make time for buying all kinds of goods, let alone patiently choose the goods they want. Therefore, designing an online mall is not only to meet the general trend of e-commerce, but also a breakthrough in the traditional commodity sales industry, which can bring changes and opportunities to the traditional sales industry.
This system is mainly to provide users with a platform to buy all kinds of goods, attract many consumers to buy through price advantage, and realize normal operation. The system adopts the object-oriented development mode for software development and hardware erection, which can well meet the needs of practical use, and improve the corresponding software erection and program coding. The system adopts MySQL as the main storage unit of background data, applies the principles and development methods of software engineering, and adopts node JS koa technology to build a management system, to achieve all the functions of the system. The goal is to realize a sales centered computer system and build a business system with the organic combination of user information and account number, account number and order information.
Key words:E-Shop; Online shopping; Node. js
目 录
摘 要 I
ABSTRACT II
第1章 绪论 1
1.1研究背景 1
1.2研究意义 1
1.3系统目标 1
1.4本文的结构 2
第2章 关键技术介绍 3
2.1 koa框架 3
2.2 Vue.js主要功能 4
2.3 MVVM模式介绍 4
2.4 B/S体系工作原理 5
2.5 Mysql数据库 5
2.6 koa框架优点 5
2.7JavaScript 运行模式 5
第3章 系统分析 5
3.1可行性分析 5
3.1.1操作可行性 5
3.1.2技术可行性 5
3.1.3经济可行性 5
3.2功能需求分析 5
3.3用例分析 6
3.4数据流分析 7
3.5数据字典 9
第4章 系统设计 13
4.1结构设计 13
4.2功能设计 13
4.3数据库设计 16
4.3.1概念设计 16
4.3.2逻辑设计 19
4.3.3表设计 19
第5章 系统详细设计 23
5.1Node.jsEE连接数据库 23
5.2登录模块 23
5.3商城资讯模块 25
5.4商品评论模块 27
5.5购买商品模块 27
5.6系统用户管理模块 28
5.7商城管理模块 30
5.8商城资讯管理模块 31
5.9物流配送管理模块 31
第6章 系统测试 35
6.1测试目的 35
6.2测试用例 35
第7章 结论 38
参考文献 39
致 谢 40
1.1研究背景
各种物品是人们日常的消费品,物品供应与消费者需求有着极为重要的关系。社会压力造成工作日渐繁忙,时间观念越来越强,简化事务、方便消费,使网络化销售逐渐成为消费社会化的需要。同时,由于人们生活消费质量的不断提高,各种物品消费需要由“数量型”向“质量型”转变,物品消费的消耗性、多样化也成为一种消费需求。
线上购物在当今发达国家已经显示出较强的发展势头,它在推动国家经济增长方面可以说又是一支崭新的力量。相比之下,在我国线上购物还是比较滞后,但是,经过近几年的发展,有越来越多的人认识到“网上订货、送货上门”的方便,也有越来越多的人也开始接受线上商城购物。CNNIC在其发布的《中国互联网络热点调查报告》中显示:在我国有17.9%的网民在半年内有过网络购物经历,在浏览过购物网站的网民中,有29.6%的人在半年内有过网络购物经历,有过网络购物经历的被访者中有超过90%的人今后会继续进行网络购物;有63.7%没有购物经历的网民表示今后会尝试网络购物。
虽然我国的互联网发展迅速,但是我国线上购物比例与发达国家相比相差甚远,网上购物人数发展潜力巨大,市场空间很大。
1.2研究意义
随着移动互联网时代繁盛的今天,国家也发布了“互联网+”战略,意在利用互联网改造各个传统行业,通过使用信息管理系统以及互联网平台,让互联网与传统行业进行深层次的融合发展,实现1+1>2的效果。互联网战略可谓是我国当前时代发展中众多战略的重中之重,搭载着互联网时代的顺风快车,连锁商场业务的数字信息化发展可谓是如鱼得水。中国计算机网络的发展已有数十年,基础网络早已在各大城市普及。可以说,无论在零售业、生活服务、信息服务等等的方方面面,互联网信息化起到了中流砥柱的作用。
中国近几年来互联网发展迅速,甚至领先全球多数发达国家,到达全球领先的地步。零移动互联网的出现更是迅速改造了传统行业,人们日常购买食品,服装,护肤品等都可以通过各式各样的线上商城进行购买。线上网上商城作为当今人们都市生活接触最多的产业,各大互联网公司平台渗透度高,因此本文研究的“网上商城”的发展应该顺应时代的需求,
1.3系统目标
对于典型的数据库系统,尤其是对于像网上商城这样的数据流量特别大的网络系统,必须要满足使用方便、操作灵活等要求。本系统在设计时应该满足以下几个目标
(1)采用人机对话的操作方式,界面美观、友好,信息查询灵活、方便,数据存储准确、安全可靠;
(2)全面展示所有商品,并可展示主要商品;
(3)便于顾客快捷地进行商品信息查询;
(4)用户可以随时修改自己的基本资料;
(5)实现下单的功能;
(6)顾客可以随时查看自己的订单信息;
(7)对客户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误;
(8)系统最大限度地实现了易维护性和易操作性;
(9)系统运行稳定、安全可靠。
1.4本文的结构
本文具体内容包括:绪论、系统采用的关键技术、系统分析、系统设计、系统实现和系统测试。本文着重描述了系统的组成与结构,阐述了系统的设计方案、实现方法以及所采用的开发工具和相关技术,另外,重点剖析了部分环节的开发过程。本系统在一定的环境下对系统的重要模块进行了模拟测试,证实了系统的可用性、可靠性。
Node.js是一个异步的世界,官方API支持的都是callback形式的异步编程模型,这会带来许多问题,例如:1、callback嵌套问题;2、异步函数中可能同步调用callback返回数据,带来不一致性。为了解决以上问题Koa出现了。
koa是由Express原班人马打造的,致力于成为一个更小、更富有表现力、更健壮的Web框架。使用koa编写web应用,可以免除重复繁琐的回调函数嵌套,并极大地提升错误处理的效率。koa不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写Web应用变得得心应手。开发思路和express差不多,最大的特点就是可以避免异步嵌套。
阿里内部就在使用Koa框架,并在Koa基础上面做了一些扩展和封装。并且基于koa开发了一个开源框架egg。
2.2 Vue.js 主要功能:
Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。
Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
Vue.js 自身不是一个全能框架——它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时,Vue.js 也能驱动复杂的单页应用。
2.3 MVVM模式介绍:
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
2.4 B/S体系工作原理:
B/S架构采取浏览器请求,服务器响应的工作模式。
用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;
而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;
从