基于html和mongodb的电子产品购物网站


    

    基htmlmongodb电子产品购物网站

    Electronic Product Shopping Website Based on HTML and Mongodb



    部分网站停留传统html+css通相似课题文献调查研究系统更集中购物网站够保证信息安全时提高系统运行效率户良体验感
    系统决定nodejs搭建运行环境express框架作系统系统开发框架利ajax异步操作提高户体验数交互速度较流行nosql数库——MongoDB数库:具更高插入速度处理规模单表快速安全动实现数转移查询速度更快非结构化爆发增长等量session缓存代传统cookie缓存定义加密方法户密码加密保存数库户数安全性极提高遵循MVC设计模式高聚低耦合系统便理优化
    关键词: nodejs MongoDB MVC express ejs



    Abstract
    Most websites still use traditional HTML + CSS Through the investigation and research of other similar subjects this system focuses more on how to make the shopping website to ensure the security of personal information and improve the efficiency of the system but also to give users a good sense of experience
    Therefore the system decided to use nodejs to build the running environment As the development framework of the system express framework used Ajax asynchronous operation to improve the user experience and data interaction speed It used the current popular NoSQL database mongodb database which has higher insertion speed can handle largescale single table and can quickly safely and automatically realize data Transfer query faster unstructured explosive growth and so on Session cache is widely used instead of traditional cookie cache and userdefined encryption method is used to encrypt the user's password before saving it to the database which greatly improves the security of the user's data Follow MVC design mode high cohesion and low coupling the system is easy to use manage and optimize
    keyword:nodejs MongoDB MVC express ejs


    目录
    第章 引言 1
    11 研究现状 1
    12 研究目 1
    13 研究思路容 1
    14 系统行性分析 2
    第二章 系统开发关键技术研究 3
    21 nodejs简介 3
    211特点 3
    212应场景 3
    22 Visual Studio简介 4
    23 数库介绍 5
    第三章 购物网站设计 6
    31 需求分析 6
    311 系统功分析 6
    312 系统设计分析 6
    32系统设计 6
    321 系统模块设计 6
    322 系统模块程序流图 6
    33 数库设计 11
    331 数库图表 12
    332 连接数库 17
    第四章 购物网站实现效果分析 18
    41 系统功实现界面效果分析 18
    411 户模块功 18
    412 界面效果部分代码 18
    第五章 系统测试调试 25
    51 测试计划 25
    511测试程 25
    512测试方法 25
    52 测试例结果 25
    第六章 系统优化合理化建议 36
    61 系统优化容 36
    611数缓存 36
    612文件传 36
    613户隐私加密 36
    614注册重复 36
    615重复页面处理 37
    616权限筛选 37
    617验证码 38
    618页面拼凑 39
    62 系统优化建议 39
    结 40
    参考文献 41
    致谢 42


    第章 引言
    11 研究现状
    伴着网络普传统购物行业已逐渐电子商务取代传统行业倒闭速度断加快城市步行街断消失消费者断减少网购物赖性越越
    网络销售成明显线销售成低:需雇佣太店员需门店予户更直观购物体验:购物商品进行评价越越严格刷单惩罚条款等
    网购物性价更高:更容易货三家样东西商户法肆忌惮抬高价格样时间线逛店远线越越懒导致更想动逛午步行街消费者会疲惫堪逛天电子商城消费者旧精神抖擞会手脚发麻疼痛
    国外没完全成熟负责做电子产品销售网站APP竞争样性客户台:客户类型交易量制约消费者电子商务高额度消费疑虑购物台运维成等
    12 研究目
    鉴国外种现状系统负责做电子产品销售时希提高户隐私安全性提高户体验感户安心放心购物台专做二户良购物体验种顾客帝感觉
    13 研究思路容
    目前购物网站技术已较成熟查文献优化:目前国外web页面部分传统web框架特点前端分离前端开发需团队执行成较高户体验信息处理方面提高web应系统面着高发访问难题传统数库支持批量数处理连淘宝京东等开始Nosql数库时刻基htmlmongodb数库处理批量数处理问题高发难题恰恰nodejs异步非堵塞特点解决[1][2]
    拥着高发特点意味着需系统优化太强DOS攻击样会导致系统瘫痪加强滤筛选规时系统应nodejs够解决数重复申请者传问题减少服务器数库访问定程度提高系统运行速度安全性外引入nodejsexpress框架[3][4]部分数放前端减少服务器负担加强系统安全性帐号密码等url数传递者cookie保存数等
    14 系统行性分析
    系统决定nodejs搭建运行环境利异步操作提高户体验数交互速度外较流行nosql数库:MongoDB数库更快插入数数库中处理更规模单表保证安全性时更高速更智实现数转移查询速度更快非结构化爆发增长等特点提高购物网站效率急需
    第二章 系统开发关键技术研究
    21 nodejs简介
    211特点
    Nodejs端JavaScript运行前端JavaScript进行改写基础迁移服务器端JavaScript支持前端语言变成前端通语言[5]
    Node区语言特点便异步非堵塞特点nodejs中果改动代码接口者函数运行话绝数异步操作样够语言层次轻松进行行IO操作优化户体验时提高系统运行速率
    事件驱动特性系统更MVC模式设计行IO操作时候事件交业务逻辑时量处理事件必时业务逻辑采行IO说系统运行速度称极速
    回调函数存配合着两特点果没回调函数意味着服务器端数事件全处理端员极挑战
    Nodejs兼容JavaScriptJavaScript语言特点单线程操作JavaScript响应户操作页面节点进行操作nodejs中JavaScript线程相互独立完美兼容JavaScript语言时child_process子进程出现nodejs单线程方面健壮性核CPU运方面充分满足通计算分解分配子进程然通回调函数传递结果开发模型变轻便MasterWorker模式理方式nodejs具备更高健壮性[6][7]
    212应场景
    基特点清楚解nodejs适合什样场景什样应
    IO操作频繁场景
    单单线程IO密集操作说nodejs处理力绝数nodejs够高效统筹更应达更服务效果Nodejs方面优势利事件驱动特性循环处理常思想开启线程操作进行相应[8]
    CPU密集型
    执行效率V8执行效率肯定没否定nodejs兼容JavaScript文提CPU密集nodejs带问题JavaScript单线程问题单线程果长时间计算会导致cpu时间片释放总周知cpu旦直占等cpu空闲谁做什操作nodejs通计算分解分配子进程然通回调函数传递结果保证阻塞IO调发起线程频繁发起单线程更高计算效率
    22 Visual Studio简介
    Visual Studio 集成开发环境种创新启动板编辑调试生成代码然发布应  集成开发环境 (IDE) 功丰富程序软件开发许方面 数 IDE 提供标准编辑器调试器外Visual Studio 包括编译器代码完成工具图形设计器许功简化软件开发程
    Visual Studio简称vs里面集成量开发环境说丰富作开发工具肯定着数IDE提供编译器调试器作高集成开发环境帮助提高工作效率功插件必备
    波浪线提示舒服功编译工作进行时候边帮助纠正数细节性错误马虎远离配合波浪线提示快速操作功果鼠标放波浪线错误代码会关代码错误信息缺少右分号等信息者左边距中红叉叉者黄灯泡会关该错误英文提示选修复错误选项
    代码重构功代码封装重构做编程工作时候必少操作相信少愿意会花量时间做代码封装重构意味着代码接框架源码项目项目中需重复敲写代码
    搜索框出现工程项目说福利需记忆该代码者代码块概区域然行行找需直接搜索框果协工作话协员说需通读相关代码块代码文件提高工作效率然代码规范化做否杂乱章代码会毫工作欲造成开发运维员便
    协工作搜索框出现应Live Share功:实时安全享项目根需调整更语音呼功实现类似金山文档通讯工具等功
    转定义速览定义功更针量代码产生开发员直接传送函数定义位置者类型定义位置受否文件文件夹影响速览定义功顾名思义会想定义方出现类似模态框东西清楚该函数该变量定义容
    23 数库介绍
    Mongodb数库nosql数库中非关系型数库领域直独占鳌头数库出现更快更高效开发web应具高速IO性区传统数库方弹性扩展需sql数库样添加数添加行数0没增数库占空间时造成数读写传送便
    Mongodb文档类型数库顾名思义利文档存储数关系型数库中表格形式文档数库表
    然作数库动态查询二级索引等功mongodb中支持

    第三章 购物网站设计
    31 需求分析
    311 系统功分析
    登录注册功:户户名密码类型长度进行限制注册时重复注册数库中已户名
    搜索推荐:搜索功根户搜索记录推荐相应类似商品
    订单理:户已购买者未购买订单进行理删查询修改等
    商品详情:商城商品详细信息款式颜色价格等
    商品架:店店铺商品理架架修改商品信息等
    浏览记录:户商城中浏览记录
    库存理:店商品数量设置值低值时会出现库存预警弹框
    数备份恢复:数库数备份原
    312 系统设计分析
    根身份划分四级权限:
    级权限:普通户(游客)
    二级权限:购物商城店
    三级权限:购物商城理员
    四级权限:数库理员
    32系统设计
    321 系统模块设计
    根系统功分方面:
    :户模块
    户登录注册户权限筛选户信息修改户浏览记录
    二:商品模块
    购物商城中商品信息商品架库存预警商品订单理
    三:系统功模块
    包括购物商场商品搜索推荐数库备份原
    322 系统模块程序流图

    图31注册程序流图
    开系统注册页面输入户名密码校验密码输入框旁边会提示鼠标失焦时符合规范文字提醒符合规范会注册规提示点击注册钮响应符合注册规提示注册成功插入数数库中跳转登录页面

    图32登录程序流图
    开登录页面输入符合规范户名密码符合规范输入框旁会文字提醒点击登录钮响应符合规范数库中查询否存匹配户名密码匹配成功提示登录成功跳转首页匹配成功返回登录页面

    图33推荐程序流图
    户登录进入首页时数库动查询浏览记录session形式返回客户端客户端数渲染搜索框方

    图34搜索商品程序流图
    户者游客进入首页点击搜索钮输入想搜索商品信息点击搜索时数库正表达式形式查询否存符合条件商品存时数传递客户端跳转页面数渲染页面中符合条件返回首页

    图35订单理程序流图
    户登录进入订单理页面该户订单进行查询修改删存户客户端登录情况导致操作突时弹出提示信息框刷新订单详情页操作成功刷新页面

    图36订单详情程序流图
    户游客首页者推荐页订单详情页等商品名字图片链接页面点击该商品客户端商品idsession形式发送服务器端服务器数库中查询该商品信息商品已架提示查商品返回首页存该商品跳转商品详情页

    图37商品架程序流图
    户登录点击店铺理链接时数库中验证户权限果户店身份跳转店铺商品信息页面查询该店商品数渲染页面符合权限提示非店返回首页

    图38历史记录查询程序流图
    户登录点击浏览记录链接数库查询该户浏览记录存浏览记录跳转浏览记录页面渲染数存浏览记录浏览页面中显示热门商品信息列表

    图39库存报警程序流程图
    店登录点击店铺理中库存量预警功设置低库存量预警次登录时会动商品否达警戒点达警戒点弹出警戒框否反映

    图310数库增删查改程序流程图
    数库理员视化数库理工具中登录通权限验证登录数库数库进行操作

    图311数库备份恢复程序流程图
    数库理登录数库软件数库带备份原语句系统数库进行备份恢复
    33 数库设计
    Mongodb文档类型数库表现形式bson类似json数格式储存关系型数库法存储非结构性复杂数类型数组里面嵌套数组甚数组系统中做商品信息存放购物车商品信息数量存放等商品信息相长度选款式系统购物车户数表中插入购物车数组中数该商品id数购物车中该商品数量户进入购物车时候通表单关联查询方式商品id商品数表中查询该商品信息渲染页面非常适合做规数读写

    331 数库图表

    图312数库ER图
    数库嵌套bson数通数关联方式数表进行连接商品信息表商品数


    图313户数表实体图
    Id数库带objectid数插入数库中动生成bson15位数数允许空象户名620位数类型数字字母string类型密码样浏览记录嵌套bson数保存着户浏览20条商品信息新户空象店铺商品注册店户特属性户权限够法没店铺商品数架50商品搜索记录嵌套bson数户没搜索功象空否保留户新搜索20条信息购物车嵌套bson数户没增加商品购物车中空否添加20样商品购物车中订单嵌套bson数户没购买者未付款订单象空保留20条订单信息户权限14级空户数表图示:
    表314 户数表
    序号
    数元素
    数类型
    数长度
    允许空
    1
    id
    BSON 
    12

    2
    户名
    String
    620

    3
    密码
    String
    620

    4
    浏览记录
    Json
    20

    5
    店铺商品
    Json
    50

    6
    搜索记录
    Json
    20

    7
    购物车
    Json
    20

    8
    订单
    Json
    20

    9
    户权限
    Int
    1



    图315 商品实体图
    Id数库身生成bson数空Price商品售价color商品颜色商品者店铺没颜色该商品空edition商品款式click该商品点击次数搜索引擎重排列序源初始0空num商品库存img商品图片存放路径页面img标签链接空weight商品重量discount商品描述性语句
    表316商品信息数表
    序号
    数元素
    数类型
    数长度
    允许空
    1
    Id
    Bson
    12

    2
    Price
    Int


    3
    Color
    String


    4
    Edition
    String


    5
    Click
    Int


    6
    Num
    Int


    7
    Img
    String


    8
    Weight
    Int


    9
    Discount
    String





    图317 搜索记录实体图
    搜索记录表户推荐商品重源id数库插入数时动生成空表中商品关联查询唯索引Time保存搜索时间数保存新20条搜索记录空
    表318 搜索记录表
    序号
    数元素
    数类型
    数长度
    允许空
    1
    Id
    Bson
    12

    2
    Time
    time_t




    图319 购物车信息实体图
    Id商品信息表中id关联查询商品信息唯索引num该户该商品已付款者未付款商品数量
    表320 购物车信息表

    序号
    数元素
    数类型
    数长度
    允许空
    1
    Id
    Bson
    12

    2
    Num
    Int





    图321 订单信息实体图
    Id商品id付款状态区分已付款未付款信息数num该商品已付款者未付款数量
    表322 订单信息表
    序号
    数元素
    数类型
    数长度
    允许空
    1
    Id
    Bson
    12

    2
    付款状态
    boolean 


    3
    退换货状态
    String


    4
    单时间
    time_t


    5
    Num
    Int


    6
    订单号
    Int
    16



    图323 店铺商品信息实体图
    Id商品idnum该店该商品库存数量
    表324 店铺商品信息表
    序号
    数元素
    数类型
    数长度
    允许空
    1
    Id
    Bson
    12

    2
    Num
    Int



    332 连接数库
    MongoDB般机直接连接需帐号密码作商业性系统数库必须身份认证登录远程连接二数安全性服务器必须固定ip址次连接服务器ip址话会导致连接需先固定ip址然采数库远程连接方式建立数库连接
    第四章 购物网站实现效果分析
    41 系统功实现界面效果分析
    411 户模块功
    户模块包括:户登录注册户权限筛选户信息修改户浏览记录
    412 界面效果部分代码

    图41登录页面图
    登录时输入框旁会户名密码规提示符合规点击登录钮响应符合规查询数库否匹配户数匹配跳转首页否提示户名错误密码错误三秒跳转页面
    部分代码: